Geheimnisprinzip nach Parnas
Klienten einer Komponenten sollen keine Kenntnis über interne Details kennen.
Law of Demeter
Klassen dürfen nur nutzen
- Methoden der eigenen Klasse
- Methoden und Objekte die als Parameter übergeben werden (! nicht transitiv)
- Methoden und Objekte, die die Klasse selbst erzeugt hat
- Methoden direkt assoziierter Klassen
SOLID-Prinzipien
- S – Single Responsibility
- O – Open Closed (Erweiterungen und Änderungen, => HiFi-Verstärker)
- L – Liskov Substitution Prinzip („is-a“)
- I – Interface Segregation Principle (mehrere feingranulare Interfaces)
- D – Dependency Inversion Principle (Keine direkte Abhängigkeiten zu konkreten Klassen)