bg_image
header

SOLID

SOLID ist ein Akronym, das fünf Designprinzipien in der objektorientierten Programmierung und Softwareentwicklung repräsentiert. Diese Prinzipien wurden von Robert C. Martin eingeführt, um eine wartbare, skalierbare und flexible Softwarearchitektur zu fördern. Jeder Buchstabe im Akronym steht für ein bestimmtes Prinzip:

  1. Single Responsibility Principle (SRP): Eine Klasse sollte nur einen Grund zur Änderung haben, das heißt, sie sollte nur eine Verantwortlichkeit haben. Dieses Prinzip fördert die Trennung von Anliegen und stellt sicher, dass jede Klasse sich darauf konzentriert, eine Sache gut zu erledigen.

  2. Open/Closed Principle (OCP): Software-Entitäten (Klassen, Module, Funktionen usw.) sollten für Erweiterungen offen, aber für Änderungen geschlossen sein. Dieses Prinzip ermöglicht das Hinzufügen neuer Funktionen, ohne den bestehenden Code zu ändern, fördert die Wiederverwendung von Code und minimiert das Risiko, Fehler einzuführen.

  3. Liskov Substitution Principle (LSP): Objekte einer Superklasse sollten durch Objekte ihrer Unterklassen ersetzbar sein, ohne die Korrektheit des Programms zu beeinträchtigen. Mit anderen Worten sollten Unterklassen austauschbar mit ihren Basisklassen sein.

  4. Interface Segregation Principle (ISP): Clients sollten nicht gezwungen sein, von Schnittstellen abhängig zu sein, die sie nicht verwenden. Dieses Prinzip schlägt vor, dass kleinere, fokussiertere Schnittstellen besser sind als große, allgemeine Schnittstellen, um zu verhindern, dass Clients mit unnötigen Methoden belastet werden.

  5. Dependency Inversion Principle (DIP): Module der oberen Ebene sollten nicht von Modulen der unteren Ebene abhängen; beide sollten von Abstraktionen abhängen. Abstraktionen sollten nicht von Details abhängen, sondern Details sollten von Abstraktionen abhängen. Dieses Prinzip fördert den Einsatz von Schnittstellen und Dependency Injection, um Klassen zu entkoppeln und die Flexibilität zu erhöhen.

Indem man diesen SOLID-Prinzipien folgt, können Entwickler eine wartbare, modulare und robuste Software erstellen, die im Laufe der Zeit leichter erweitert und geändert werden kann.


Erstellt vor 2 Jahre
Design Patterns Objektorientierten Programmierung Prinzipien Programmierung

Hinterlasse einen Kommentar Antworten Abbrechen
* Erforderliches Feld