What are the real benefits of Immutable or Unmodifiable collections, or objects?
As programmers, we try to write code without bugs, such that a user cannot break the system, and that bad actors cannot hack into it. To me, Immutable objects seem to try to prevent programmers from making silly mistakes.
Is there more to it than that?
Immutable classes and collections really help to avoid concurrency issues with multiple threads trying to modify the same objects.