Best-Practice-Sammlung zum Modifizieren von Attributen funktional

stimmen
14

Ich bin gespannt, wie etwa die Implementierung einer Klasse zu gehen, die strengen funktionalen Programmierung Regeln gehorcht.

Zum Beispiel, wenn ich eine Klasse, die zwei Attribute hat, und ich habe eine Methode, die sie modifiziert, wie würde ich mich über so tun? Die Attribute würden private vals sein, und die Methode eine neue Instanz des Attributs zurückkehren würde jedes Mal, es es modifiziert. Das ist in Ordnung, es sei denn ich es enthielt behalten möchten, was bedeutet, ich würde einen Weg brauchen die val einzustellen.

Was wäre der beste Weg, dies zu tun, damit ich nicht haben Tausende von Fällen von sagen wir, einer Sammlung, im Umlauf in Erinnerung?

Veröffentlicht am 27/07/2014 um 17:27
vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
0

Das ist meine Meinung, aber; ebenso wie die Fallklassen zu tun, würde ich eine Implementierung copyMethode der Art auf die Klasse der Modifikation möglich zu machen , während die Unveränderlichkeit zu halten, aber es gibt einige Fälle , dass ich es nicht wandelbar haben kann helfen; zum Beispiel, wenn etwas wird erwartet , dass der Kopiervorgang zu groß und zu langsam für die Klasse zu machen; wie wenn die Klasse so viele häufig modifizierte Mitglieder hat. Und keine Sorge über tausende von Fällen um im Speicher schweben, weil sie automatisch GC'ed sind, so dass die mehr eigentliche Problem ist die Zeit , Kosten der Klasse Instanzen zu kopieren. Bitte sagen Sie mir , wenn meine Meinung irgendwie falsch ist :)

Beantwortet am 27/07/2014 um 17:57
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more