Nützlichkeit unveränderlicher Objekte, wenn sich der Status eines Programms ständig ändert

Ich weiß, dass unveränderliche Objekte immer denselben Zustand haben, den Zustand, in dem sie tatsächlich erzeugt werden. Ihre Invarianten werden vom Konstrukteur festgelegt, und da sich ihr Zustand nach der Erstellung nicht ändert, behalten diese Invarianten immer ihre Gültigkeit. Aus diesem Grund können sie sicher in einer Umgebung mit mehreren Threads veröffentlicht werden. Das ist alles in Ordnung, aber da wir in einer dynamischen Welt leben, in der sich der Zustand des Programms ständig ändert, welchen Nutzen bringen uns solche Objekte, wenn wir den Zustand unseres Programms durch unveränderliche Objekte konstruieren?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage