Introdução
O título do post é realmente "holivny", mas, na minha opinião, o Java e a popular biblioteca Guava têm vários problemas de arquitetura que, a longo prazo, levam a ambiguidades e divergências na equipe.

Framework de coleções Java e imutabilidade na confiança
Collections Framework , . java.util.Collection add, clear, remove ... : Collections.emptyList(), Collections.singletonList<T>(T t), Arrays.asList<T>(T.. values) . . :
List<Integer> list = Arrays.asList(21, 22, 23);
list.add(24)        
? java.util.List java.util.Collection, add. , Arrays.asList<T>(T... t) , add remove . : , . , - .
List<Integer> list = Arrays.asList(21, 22, 23);
list.set(0, 121);
System.out.println(list);        
. . , . , , , . .
List<Integer> filtered = filter(List<Integer> list);
filter List<Integer> . ? , ? try {} catch(Exception e) {} add remove — . ? ? list, filtered? . , . , — . , , list.clear(), , . SOLID, L — , , . , add , .
- , Stream API. , Java , , , . , , .
, java.util.Collection, java.util.Iterable, Collection. Iterable , Iterator, for-each . .
public interface Iterator<E> {
    boolean hasNext();
    E next();
    default void remove() {
        throw new UnsupportedOperationException("remove");
    }
    default void forEachRemaining(Consumer<? super E> action) {
        Objects.requireNonNull(action);
        while (hasNext())
            action.accept(next());
    }
}
remove. , for-each, , , API , , . - , , , , Java , .
Guava
Guava? — ImmutableList.
ImmutableList<String> people = ImmutableList.of("Michael", "Simon", "John")
...
? «Immutable». , ImmutableList java.util.List, add, clear ... , . , final. : , List Collection. , ImmutableList, , , « ». Guava .
Kotlin
? , JetBrains Kotlin. , , , . :

, , , .
val list: List<Int> = listOf(1, 2, 3)
val mutableList: MutableList<Int> = list as MutableList<Int>
mutableList.clear()      
- , MutableList List MutableList, , . , Java Collections Framework, Guava: , . , , . , Java, - , , , .
? ? , : , , , . . Java Collections Framework Immutable. :

, , «Immutable». , . , ImmutableQueue, , . . LinkedList , , ( , ). ImmutableLinkedList .
- , , . List ImmutableList. , toMutableList toImmutableList ImmutableList List . , , . , ArrayList ImmutableArrayList . . ArrayList , ImmutableArrayList, ImmutableArrayList ArrayList. API , .
, — java.util.Iterable. , for-each , . java.util.Iterator, , remove, . , .
- ImmutableIterable,- ImmutableIterator. , , Java for-each- Iterable,- ImmutableIterable.
- ImmutableIterator,- java.util.Iterator- remove,- final, . , .
- remove- Iterator, , Java, , .
, Java JP . , — , Java-. , , . !
P.S.
Atualmente, estou trabalhando em uma biblioteca de código aberto que fornece coleções Java totalmente imutáveis. Os interessados podem encontrar o link no Github .