FAQ Group: open closed
Wie unterscheidet sich OCP von anderen SOLID-Prinzipien?
—
OCP konzentriert sich auf Erweiterbarkeit ohne Änderung, während z. B. das Single Responsibility Principle auf die Trennung von Verantwortlichkeiten abzielt. Die Prinzipien ergänzen sich aber oft in der Praxis.
Was sind die Nachteile oder Herausforderungen beim Open/Closed Principle?
—
Manchmal überkompliziert man den Code durch zu viele Abstraktionen.
Was ist ein Beispiel für das Open/Closed Principle in der Praxis?
—
Stell dir eine Klasse Rechnungsdrucker vor, die aktuell nur PDF-Rechnungen drucken kann. Wenn du OCP einhältst, würdest du eine Schnittstelle IDrucker erstellen und für PDF, Word, usw. jeweils eigene Klassen bauen. Die Rechnungsdrucker-Klasse muss dann nicht verändert werden, wenn ein neuer Drucktyp dazukommt – du erweiterst einfach mit einer neuen Klasse.
Warum ist das Open/Closed Principle wichtig?
—
Weil es hilft, den Code wartbarer und stabiler zu machen. Wenn man bestehende Klassen nicht ändern muss, reduziert man das Risiko, bestehende Funktionalitäten zu beschädigen, und kann neue Features leichter hinzufügen.
Was ist das Open/Closed Principle (OCP)?
—
Das Open/Closed Principle ist ein Prinzip aus den SOLID-Prinzipien der objektorientierten Programmierung. Es besagt, dass Softwaremodule für Erweiterungen offen, aber für Änderungen geschlossen sein sollen. Das bedeutet: Man soll bestehende Klassen oder Module erweitern können, ohne ihren Quellcode zu verändern.