wegus
MU Team
Thread Starter
- Dabei seit
- 13.09.2004
- Beiträge
- 19.698
- Reaktionspunkte
- 7.551
Getter/Setter sind ganz bestimmt nicht evil
Sie sind in ihrer Standardform redundantes Zeug. Da gefällt mir der Ansatz von z.B. Ruby ganz gut, die Getter/Setter implizit erzeugen können wenn gewünscht. Erst dann wenn ich spezielle Getter ( etwa mit Type-Casting) oder Setter mit Zusatzaktionen (Converter,...) benötige muß man sie wirklich hinschreiben.
Generell sind Getter/Setter die Werkzeuge um den Zugriff auf Attribute kanalisiert laufen zu lassen, die Kontrolle dafür der Instanz zu überlassen ( so kann ein Attribut ja auch temporär gesperrt sein) und Zugriffe zu standartisieren. Dabei ist es durchaus diskutabel ob der immer wiederkehrende Mechanismus eines 1:1 Getter/Setters durch Refactoring automatisiert werden sollte ( also durch IDEs Arbeit abgenommen wird) oder ob man da mal in der Sprachdefinition ansetzt und für Standards eben auch Standard Getter/Setter etabliert wie Ruby es tut.
Ganz ohne zu arbeiten verschlankt zwar Vieles was Routinetipparbeiten angeht, geht aber eben auch wieder Risiken ein, für die man diesen Direktzugriff extra mal abgeschafft hat.
Sie sind in ihrer Standardform redundantes Zeug. Da gefällt mir der Ansatz von z.B. Ruby ganz gut, die Getter/Setter implizit erzeugen können wenn gewünscht. Erst dann wenn ich spezielle Getter ( etwa mit Type-Casting) oder Setter mit Zusatzaktionen (Converter,...) benötige muß man sie wirklich hinschreiben.
Generell sind Getter/Setter die Werkzeuge um den Zugriff auf Attribute kanalisiert laufen zu lassen, die Kontrolle dafür der Instanz zu überlassen ( so kann ein Attribut ja auch temporär gesperrt sein) und Zugriffe zu standartisieren. Dabei ist es durchaus diskutabel ob der immer wiederkehrende Mechanismus eines 1:1 Getter/Setters durch Refactoring automatisiert werden sollte ( also durch IDEs Arbeit abgenommen wird) oder ob man da mal in der Sprachdefinition ansetzt und für Standards eben auch Standard Getter/Setter etabliert wie Ruby es tut.
Ganz ohne zu arbeiten verschlankt zwar Vieles was Routinetipparbeiten angeht, geht aber eben auch wieder Risiken ein, für die man diesen Direktzugriff extra mal abgeschafft hat.