Thread Liskovsches Sommerloch
(19 answers)
Opened by rosti at 2025-06-25 09:13 2025-06-26T22:43:56 hlubenow Ganz schlechte Idee ;) Um von Liskov mal in die Praxis zu kommen: Methoden die in nur einer Subklasse gebraucht werden, haben in der Basisklasse nichts zu suchen. Das heißt, daß eine Methode erst dann berechtigt ist einen Platz in der Basisklasse zu kriegen wenn sie in mehr als nur einer Subklasse benötigt wird. Andernfalls hätten wir das Problem mit redundanten Code. Beispielsweise hat die $FH->open($file) Methode in der Basisklasse IO::Handle nichts zu suchen, weil die Basisklasse nur das Handle bedient und Dateien gar nicht kennt. Andererseits darf es in einer Basisklasse File durchaus eine Methode $FH->getBOM geben obwohl es eine BOM nicht in jeder Datei gibt. Das ist meine Auslegung und was die Vererbung von Eigenschaften betrifft, bin ich der Meinung daß man ansteller einer Solchen besser Konstanten definiert und exportiert. Der ganze objektorientierte Aufbau Perl im Core bestätigt, daß meine Ansichten zweckmäßig sind. Schönes Wochenende. Last edited: 2025-06-27 15:28:46 +0200 (CEST) |