SOLID
Ein sehr informativer Artikel über dieses Thema: hier
| Single responsibility principle | Eine Aufgabe pro Klasse. | | Open/closed principle | Klassen sind offen für Erweiterungen und geschlossen für Veränderungen. | | Liskov substitution principle | Objekte in einem Programm sollten mit einer Instanz dieses Objektes ersetzt werden. | | Interface segregation principle | Mehrere Client-Spezifische Interfaces sind besser, als ein generelles Interface. | | Dependency inversion principle | Man soll die Abhängigkeit von Modulen umkehren. |