WikiDer > FEST

SOLID

SOLIDE (Einzelverantwortung, Open-Closed, Liskov-Substitution, Schnittstellentrennung und Abhängigkeitsumkehr) ist ein Akronym, das in Verbindung mit dem Computerprogrammierung von Computern. Es wurde von Michael Feathers für die ersten fünf Prinzipien konzipiert, die Robert C. Martin Anfang der 2000er Jahre erklärt[1][2][3] Das Akronym steht für die fünf wichtigsten Prinzipien in der Objekt orientierte Programmierung. Diese Prinzipien zusammen machen es wahrscheinlicher, dass ein Programmierer ein System erstellt, das haltbarer und einfacher zu warten oder zu erweitern ist.[3] Die SOLID-Prinzipien sind Teil einer globaleren Strategie der agilen Entwicklung und adaptiven Programmierung.[3]

Überblick

BriefSteht fürKonzept
soSRP[4]
Prinzip der Einzelverantwortung
Entgegen der landläufigen Meinung ist SRP in SOLID nicht das Prinzip, dass eine Klasse oder Funktion eine Verantwortung trägt. SRP in SOLID bedeutet, dass die Verantwortung für die Änderung eines Moduls bei einem Akteur liegt. Ein Modul kann so einfach wie eine Klasse sein, aber es kann auch eine Gruppe von Klassen innerhalb eines Pakets sein.
ÖOCP[5]
Offen/geschlossen-Prinzip
„Software-Entitäten … sollten offen für Erweiterungen, aber geschlossen für Modifikationen sein.“
lLSP[6]
Liskov-Substitutionsprinzip
„Objekte in einem Programm sollten durch Instanzen ihrer Untertypen ersetzt werden können, ohne den ordnungsgemäßen Betrieb des Programms zu beeinträchtigen.“
ichIS P[7]
Prinzip der Schnittstellentrennung
„Viele kundenspezifische Schnittstellen sind besser als eine generische Schnittstelle.“[8]
dTAUCHEN[9]
Prinzip der Abhängigkeitsinversion
"man sollte auf Abstraktionen angewiesen sein, nicht auf konkrete Implementierungen"[8]
Abhängigkeitsspritze ist eine Möglichkeit, dieses Prinzip anzuwenden.

Siehe auch

Quellen

  1. „Grundsätze von OOD“, Robert C. Martin („Onkel BOB“), butunclebob.com, Zuletzt gelesen 2015-05-04.
  2. „Einen SOLIDEN Start hinlegen.“, Robert C. Martin („Onkel Bob“), objectmentor.com. Zuletzt gelesen 19.08.2013.
  3. einbc„SOLID objektorientiertes Design“, Sandi Metz (Duke University), Vortrag beim Gotham . 2009 Rubin Konferenz im Mai 2009. Zuletzt gelesen 2009-01-15.
  4. Grundsatz der Einzelverantwortung.
  5. Offen/Geschlossen-Prinzip.
  6. Liskov-Substitutionsprinzip.
  7. Prinzip der Schnittstellentrennung.
  8. einb„Gestaltungsprinzipien und Gestaltungsmuster“, Robert C. Martin („Onkel Bob“), objectmentor.com. Zuletzt gelesen 14.01.2009.
  9. Prinzip der Abhängigkeitsinversion.