Objektorientierung Teil 3 (Lernzielkontrolle zu Getter/Setter, Klassendesign, Enumerations) – Anwendungsentwickler-Podcast #45

Getter und Setter, ein vernünftiges Klassendesign und Enumerations sind die Themen der fünfundvierzigsten Episode des Anwendungsentwickler-Podcasts.

Probeabo bei Audible (Affiliate)

Inhalt

Getter und Setter

  • Wie steuert man den Zugriff auf Instanzvariablen?
    • Über dafür vorgesehene Methoden: Getter und Setter.
  • Was sind Getter und Setter?
    • Methoden zum Setzen und Lesen von Instanzvariablen.
  • Welchen Vorteil haben Setter im Vergleich zu public Attributen?
    • Man kann z.B. das Setzen ungültiger Werte verhindern.
  • Welchen Vorteil haben Getter im Vergleich zu public Attributen?
    • Man kann z.B. zusätzliche Berechnungen ausführen.

Klassendesign

  • Was sind die grundlegenden Regeln beim Schreiben von Klassen?
    • Eine Klasse sollte nur eine einzige Aufgabe haben (Single Responsibility Principle).
    • Sie sollte einen sprechenden Namen haben.
    • Sie sollte keine Attribute public machen (Geheimnisprinzip).
    • Sie sollte eine hohe Kohärenz aufweisen.
    • Sie sollte eine geringe Kopplung aufweisen.

Enumerations

  • Was ist eine Enumeration?
    • Ein Datentyp, der eine abgeschlossene Liste an Werten definiert.
  • Wann und warum sollte man Enumerations verwenden (und nicht Strings oder Integers)?
    • Wenn die Anzahl der erlaubten Werte begrenzt ist bekommt man durch eine Enumeration eine Art „Typsicherheit“.

Literaturempfehlungen

Links

Polyglot Clean Code Developer
About the Author
Ausbildungsleiter für Fachinformatiker Anwendungsentwicklung und Systemintegration, IHK-Prüfer und Hochschuldozent für Programmierung und Software-Engineering.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax