Präfixe
-
Helium schrieb:
und Eigenschaften (Farbe, ...).
Warum modellierst du das dann nicht auch einfach als öffentliches Attribut? Ein Attribut ist schließlich eine Eigenschaft. Eine Methode ist keine Eigenschaft, sondern kann am ehesten mit "Verfahren" gleichgesetzt werden. Seit wann ist eine Eigenschaft ein Verfahren?
-
Warum modellierst du das dann nicht auch einfach als öffentliches Attribut? Ein Attribut ist schließlich eine Eigenschaft.
Weil du dann die Implementation unkontrolliert offenlegst. Zum einen kann die Klasse die Einhaltung ihrer Invariante nicht kontrollieren, dann kannst du das Attribut nicht read-only machen, und drittens kannst du dich später nicht mehr umentscheiden und das Attribut berechnen statt zu speichern.
Meine ideale Sprache würde syntaktisch keinen Unterschied zwischen Membervariablenzugriff und Aufruf einer Gettermethode machen (Eiffel und Common Lisp sind da ziemlich nah dran, bei Bedarf poste ich Code). C++ tut das aber. IMHO sind Proporties ein Schritt in die richtige Richtung.
Eine Methode ist keine Eigenschaft, sondern kann am ehesten mit "Verfahren" gleichgesetzt werden. Seit wann ist eine Eigenschaft ein Verfahren?
Stimmt schon, aber das ist nur aus Design-Sicht gültig. Bei der Implementierung entscheiden die konkreten Eigenschaften der vorliegenden Sprache, da kommt man letztlich nicht drumherum.