Als «object-oriented» getaggte Fragen

Eine Methode, mit der ein System als eine Reihe von Objekten modelliert werden kann, die modular gesteuert und bearbeitet werden können

6
DDD Injecting Services für Aufrufe von Entitätsmethoden
Kurzes Fragenformat Gehört es zu den Best Practices von DDD und OOP, Dienste in Entitätsmethodenaufrufe einzufügen? Langformat-Beispiel Angenommen, wir haben den klassischen Order-LineItems-Fall in DDD, in dem wir eine Domänenentität namens Order haben, die auch als Aggregatstamm fungiert, und diese Entität besteht nicht nur aus ihren Wertobjekten, sondern auch aus …

1
Verwenden von Pythons Method Resolution Order für die Abhängigkeitsinjektion - ist das schlecht?
Ich habe gesehen, wie Raymond Hettingers Pycon "Super Considered Super" sprach, und ein wenig über Pythons MRO (Method Resolution Order) gelernt, das eine Klasse "Eltern" -Klassen auf deterministische Weise linearisiert. Wir können dies zu unserem Vorteil nutzen, wie im folgenden Code, um die Abhängigkeitsinjektion durchzuführen. Also jetzt möchte ich natürlich …

2
Objektorientierte Spätbindung
In der Alan Kays Definition von objektorientiert gibt es diese Definition, die ich teilweise nicht verstehe: OOP bedeutet für mich nur Messaging, lokale Aufbewahrung und Schutz sowie das Verbergen von Staatsprozessen und extremes LateBinding aller Dinge. Aber was bedeutet "LateBinding"? Wie kann ich dies auf eine Sprache wie C # …


1
OOP ECS gegen Pure ECS
Erstens ist mir bewusst, dass diese Frage mit dem Thema Spieleentwicklung zusammenhängt, aber ich habe mich entschlossen, sie hier zu stellen, da es sich wirklich um ein allgemeineres Problem der Softwareentwicklung handelt. Im letzten Monat habe ich viel über Entity-Component-Systeme gelesen und bin jetzt mit dem Konzept ziemlich vertraut. Es …

6
Ist die Trennung der meisten Klassen in Klassen nur für Datenfelder und Klassen nur für Methoden (wenn möglich) ein gutes oder ein Anti-Muster?
Beispielsweise hat eine Klasse normalerweise Klassenmitglieder und -methoden, z. public class Cat{ private String name; private int weight; private Image image; public void printInfo(){ System.out.println("Name:"+this.name+",weight:"+this.weight); } public void draw(){ //some draw code which uses this.image } } Aber nachdem ich über das Prinzip der Einzelverantwortung und das Prinzip der offenen …


3
Ist es empfehlenswert, einen verwandten Satz von Eigenschaften in eine eigene Struktur / Klasse zu packen?
Schreiben eines Benutzerobjekts in Swift, obwohl sich meine Frage auf eine stark typisierte Sprache bezieht. Ein Benutzer kann eine Reihe von Links haben (FacebookProfile, InstagramProfile usw.). Ein paar Fragen dazu. Ist es empfehlenswert, Links in ein eigenes Objekt zu verpacken? struct User { var firstName: string var lastName: string var …


3
Gilt das Prinzip der Schnittstellentrennung für konkrete Methoden?
Da das Prinzip der Schnittstellentrennung vorschlägt, sollte kein Client gezwungen werden, sich auf Methoden zu verlassen, die er nicht verwendet. Daher sollte ein Client keine leere Methode für seine Schnittstellenmethoden implementieren, andernfalls sollte diese Schnittstellenmethode in eine andere Schnittstelle eingefügt werden. Aber wie wäre es mit konkreten Methoden? Sollte ich …

4
Was sind die Verantwortlichkeiten des Hauptteils in der objektorientierten Programmierung?
Ich bin neu in der objektorientierten Programmierung und verstehe nicht, was der Hauptzweck ist. Ja, ich habe gelesen, dass es der "Einstiegspunkt" des Programms ist, aber was ich nicht verstehe, ist, was in der Hauptsache sein sollte? Und was sind ihre Verantwortlichkeiten? Es kann vorkommen, dass etwas, das in der …

2
Ist es schlecht, Klassen zu erstellen, deren einziger Zweck darin besteht, implizit in eine andere Klasse konvertiert zu werden?
Stellen Sie sich eine Situation vor, in der wir eine Bibliothek verwenden, mit der Sie CircleObjekte erstellen können, in der Sie den Radius und den Mittelpunkt des Kreises angeben können, um ihn zu definieren. Aus irgendeinem Grund wird jedoch auch ein erforderlicher flavourParameter benötigt . Nehmen wir jetzt an, ich …

3
Verwenden von Schnittstellen für lose gekoppelten Code
Hintergrund Ich habe ein Projekt, das von der Verwendung eines bestimmten Hardwaregerätetyps abhängt, während es nicht wirklich wichtig ist, wer dieses Hardwaregerät herstellt, solange es das tut, wofür ich es brauche. Abgesehen davon weisen sogar zwei Geräte, die dasselbe tun sollen, Unterschiede auf, wenn sie nicht vom selben Hersteller hergestellt …

3
Wie kann man eine einzelne Verantwortung verwalten, wenn die Verantwortung geteilt wird?
Ich habe Basis zwei Klassen, Operationund Trigger. Jede hat eine Reihe von Unterklassen, die sich auf bestimmte Arten von Operationen oder Triggern spezialisiert haben. A Triggerkann eine bestimmte auslösen Operation. Während ein Operationvon einem bestimmten ausgelöst werden kann Trigger. Ich muss den Code schreiben, der eine Vorgabe Operationeiner Vorgabe zuordnet …


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.