dani93 hat geschrieben:Sorry, ich weiß nur wie es mir beigebracht wurde:
* alle Variablen private
* für jede Variable ein public Interface (get/set)
* Interface unabhängig von Implementierung (man brauch sich beim Aufruf keine Gedanken über die internen Vorgänge machen)
So wurde es mir die letzten Wochen eingetrichtert.
Variablen über Getter UND Setter zu ziehen hat nur dann Sinn, wenn man eine Library schreibt, bzw. vorhat auf die Änderungen oder das Auslesen früher oder später zu reagieren.
Ansonsten ist der Zugriff über eine Funktion reine Zeitverschwendung, das Definieren eines Interfaces für Variablen nur überflüssiger Quelltext, wobei überflüssiger Quelltext - so primitiv er auch sein mag - nichts anderes ist als ein zusätzliches Fehlerrisiko.
Grundsätzlich Setter und Getter zu verwenden ist genauso sinnentleert, wie grundsätzlich objektorientiert zu programmieren. Beides kostet Zeit und sehr häufig (== meistens) verbrät man Rechenzeit, ohne daraus einen Vorteil zu ziehen.
Ich halte es für sinnvoller, sich anzugewöhnen, sich Gedanken zu machen, was man da eigentlich tut und Worte wie "grundsätzlich" aus seinem Denken komplett zu streichen.
Mir war dieser Thread etwas wirr beim lesen. Wenn es zur Operatorüberladung noch Fragen gibt, so bitte einfach nochmal klar posten, damit ich sie finden und zuordnen kann. In dem Fall kann ich sie vermutlich auch beantworten.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.