AP2_FIAE - Objektorientierung - Entwurfsprinzipien
Deck: AP2_FIAE Kategorie: Objektorientierung Subkategorie: Entwurfsprinzipien Anzahl Karten: 10
Was bedeutet das SRP-Prinzip (Single Responsibility Principle)?::Eine Klasse sollte nur einen einzigen Grund zur Änderung haben und nur eine einzige Aufgabe oder Verantwortlichkeit übernehmen.
Was ist das OCP-Prinzip (Open/Closed Principle)?::Software-Entitäten sollten offen für Erweiterung, aber geschlossen für Modifikation sein. Es sollte möglich sein, das Verhalten einer Einheit zu erweitern, ohne den Quellcode dieser Einheit zu ändern.
Was besagt das Liskov Substitution Principle (LSP)?::Objekte einer Basisklasse sollten durch Objekte ihrer Subklassen ersetzbar sein, ohne dass die Korrektheit des Programms beeinträchtigt wird.
Was ist das ISP-Prinzip (Interface Segregation Principle)?::Kein Client sollte gezwungen sein, abhängig von Schnittstellen zu sein, die er nicht benutzt. Große Schnittstellen sollten in kleinere, spezifischere aufgeteilt werden.
Was besagt das DIP-Prinzip (Dependency Inversion Principle)?::Abhängigkeiten sollten von Abstraktionen und nicht von Konkretisierungen abhängen. Hochrangige Module sollten nicht von niedrigrangigen Modulen abhängen, sondern beide von Abstraktionen.
Was ist das Singleton-Entwurfsmuster?::Das Singleton-Muster stellt sicher, dass eine Klasse genau eine Instanz hat und bietet einen globalen Zugriffspunkt auf diese Instanz.
Was ist das Factory-Entwurfsmuster?::Das Factory-Muster wird verwendet, um die Erstellung von Objekten zu kapseln. Anstatt direkt mit new werden Factory-Methoden aufgerufen, die das Erstellen der Objekte übernehmen.
Was ist das Observer-Entwurfsmuster?::Das Observer-Muster definiert eine Abhängigkeit zwischen Objekten, so dass, wenn das eine Objekt seinen Zustand ändert, alle abhängigen Objekte automatisch benachrichtigt werden.
Was ist der Unterschied zwischen Vererbung und Komposition?::Vererbung basiert auf einer “ist-ein”-Beziehung, Komposition auf einer “hat-ein”-Beziehung. Bei Komposition werden Objekte zu größeren Objekten zusammengesetzt.
Warum wird Komposition über Vererbung bevorzugt?::Komposition bietet größere Flexibilität, Erweiterbarkeit und Wartbarkeit. Tiefe Vererbungshierarchien können schnell unübersichtlich werden.