Als «design-principles» getaggte Fragen

2
Gibt es OO-Prinzipien, die für Javascript praktisch anwendbar sind?
Javascript ist eine prototypbasierte objektorientierte Sprache, kann jedoch auf verschiedene Arten klassenbasiert werden: Schreiben Sie die Funktionen, die Sie als Klassen verwenden möchten Verwenden Sie ein intelligentes Klassensystem in einem Framework (z. B. mootools Class.Class ). Erzeugen Sie es aus Coffeescript Am Anfang habe ich dazu tendiert, klassenbasierten Code in …

9
Was kann schief gehen, wenn das Liskov-Substitutionsprinzip verletzt wird?
Ich verfolgte diese hoch gestimmte Frage bezüglich eines möglichen Verstoßes gegen das Liskov-Substitutionsprinzip. Ich weiß, was das Liskov-Substitutionsprinzip ist, aber was mir immer noch nicht klar ist, kann schief gehen, wenn ich als Entwickler beim Schreiben von objektorientiertem Code nicht über das Prinzip nachdenke.

1
Gilt das Liskov-Substitutionsprinzip auch für Klassen, die eine Schnittstelle implementieren?
LSP gibt an, dass Klassen für ihre Basisklassen substituierbar sein sollten, was bedeutet, dass abgeleitete und Basisklassen semantisch äquivalent sein sollten. Aber gilt LSP auch für Klassen, die eine Schnittstelle implementieren? Mit anderen Worten, wenn eine von einer Klasse implementierte Schnittstellenmethode sich semantisch von den Erwartungen des Benutzers unterscheidet, würde …


4
Wie ist das Demeter-Gesetz auf objektorientierte Systeme in Bezug auf Kopplung und Kohäsion anwendbar? [geschlossen]
Geschlossen . Diese Frage muss gezielter gestellt werden . Derzeit werden keine Antworten akzeptiert. Möchten Sie diese Frage verbessern? Aktualisieren Sie die Frage so, dass sie sich nur auf ein Problem konzentriert, indem Sie diesen Beitrag bearbeiten . Geschlossen vor 6 Jahren . Wie ist das Demeter-Gesetz auf objektorientierte Systeme …


1
Wie verifiziere ich das Liskov-Substitutionsprinzip in einer Vererbungshierarchie?
Inspiriert von dieser Antwort: Liskov Substitutionsprinzip erfordert , dass Voraussetzungen können in einem Subtyp nicht gestärkt werden. Nachbedingungen können in einem Subtyp nicht abgeschwächt werden. Invarianten des Supertyps müssen in einem Subtyp erhalten bleiben. Verlaufsbeschränkung (die "Verlaufsregel"). Objekte gelten nur durch ihre Methoden als veränderbar (Kapselung). Da Subtypen Methoden einführen …

2
Prinzip der Abhängigkeitsinversion: Verstehen, wie sowohl Komponenten auf niedriger als auch auf hoher Ebene von Abstraktionen abhängen
Ich lerne etwas über das Prinzip der Abhängigkeitsinversion. Es sagt, dass: High-Level-Module sollten nicht von Low-Level-Modulen abhängen. Beides sollte von Abstraktionen abhängen. Für eine Weile habe ich versucht zu verstehen, was es bedeutet, dass sowohl die Komponenten auf hoher Ebene als auch die Komponenten auf niedriger Ebene sich auf die …




3
Ist es ein Grundprinzip oder höchst wünschenswert, Klassenmethoden zu haben, die "$ this" anstelle eines Wertes zurückgeben?
Ich habe gerade erst angefangen, OOP zu lernen. Ich habe vor ungefähr einem Jahr angefangen und wahrscheinlich 15.000 Zeilen davon geschrieben. Aber ich habe alles mit kaum Erfahrung geschrieben, als ich mir die OOP anderer Leute angesehen habe. Die meisten meiner Klassenfunktionen geben einen Wert zurück oder nehmen Änderungen an …
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.