Software Engeneering

lernen 5

SOLID Kriterien erklären können

  • S – Single Responsibility Principle:
    1. Modul realisiert nur eine einzige Verantwortlichkeit/Funktion.
    2. Änderungen nur an einer Stelle nötig.
  • O – Open-Closed Prinzip:
    1. Offenheit für Erweiterungen bei Modulen.
    2. Realisierung durch einfaches Hinzufügen von Code.
  • L – Liskoivisches Substitutionsprinzip:
    1. Objekte einer abgeleiteten Klasse müssen genau die Funktionen können wie die Basisklassenobjekte.
    2. Realisierung dadurch, dass jede abgeleitete Klasse nur an die Stelle ihrer Basisklasse treten kann.
  • I – Interface Segregation Prinzip:
    1. Interfaces besitzen nur Methodenschnittstellen, die den Anforderungen des Clients genügen.
    2. Vermeidung von FatInterfaces durch Aufteilung eines Interfaces in verschiedene kleine (Multifunktionsdrucker -> Scanner, Drucker, Kopierer).
  • D – Dependency Inversion Prinzip:
    1. Klassen höherer Ebenen dürfen nicht abhängig von Klassen niedrigerer sein.
    2. Klassen tieferer Ebenen dürfen umgekehrt nicht abhängig von höheren Klassen sein.
  • Realisierung durch Abstraktion sodass beide Klassen egal welcher Ebene von der Abstraktion abhängig sind.
  • Ziel der SOLID-Prinzipien: Durch Minimierung der Abhängigkeiten soll die Wartbarkeit und Flexibilität von Software erhöht werden

Diskussion