Si los objetos inmutables¹ son buenos, simples y ofrecen beneficios en la programación concurrente, ¿por qué los programadores siguen creando objetos mutables²?
Tengo cuatro años de experiencia en la programación de Java y, como lo veo, lo primero que hacen las personas después de crear una clase es generar captadores y definidores en el IDE (por lo tanto, hacerlos mutables). ¿Hay una falta de conciencia o podemos salir adelante con el uso de objetos mutables en la mayoría de los escenarios?
¹ Objeto inmutable es un objeto cuyo estado no se puede modificar después de crearlo.
² objeto mutable es un objeto que se puede modificar después de crearlo.