Erstellen großer, unveränderlicher Objekte ohne Verwendung von Konstruktoren mit langen Parameterlisten

Ich habe einige große (mehr als 3 Felder) Objekte, die unveränderlich sein können und sollten. Jedes Mal, wenn ich auf diesen Fall stoße, neige ich dazu, Konstruktor-Abscheulichkeiten mit langen Parameterlisten zu erzeugen. Es fühlt sich nicht richtig an, ist schwer zu bedienen und die Lesbarkeit leidet.

Es ist noch schlimmer, wenn die Felder eine Art Auflistungstyp wie Listen sind. Eine einfacheaddSibling(S s) würde die Objekterstellung so erleichtern, macht das Objekt jedoch veränderlich.

Was benutzt ihr in solchen Fällen? Ich bin auf Scala und Java, aber ich denke, das Problem ist sprachunabhängig, solange die Sprache objektorientiert ist.

Lösungen, an die ich denken kann:

"Konstruktor-Abscheulichkeiten mit langen Parameterlisten"The Builder Pattern

Danke für deinen Beitrag

Antworten auf die Frage(18)

Ihre Antwort auf die Frage