Als «object-oriented-design» getaggte Fragen

Objektorientiertes Design ist der Prozess der Planung eines Systems interagierender Objekte zum Lösen eines Softwareproblems.



1
Wann sollte ich eine Ausnahme in Python unterordnen?
In meinem Code gibt es ungefähr sieben Stellen, an denen ich eine Ausnahme auslöse. Alle diese Ausnahmen werden gleich behandelt: Drucken Sie einen Fehler in die Protokolldatei, setzen Sie den Softwarestatus auf Standard zurück und beenden Sie das Programm. Während der Codeüberprüfung sagte mein leitender Ingenieur, den ich sehr schätze, …

3
Bereinigen Sie Code und hybride Objekte und Feature-Neid
Daher habe ich kürzlich einige wichtige Änderungen an meinem Code vorgenommen. Eines der wichtigsten Dinge, die ich versuchte, war, meine Klassen in Datenobjekte und Arbeitsobjekte aufzuteilen. Dies wurde unter anderem durch diesen Abschnitt von Clean Code inspiriert : Hybriden Diese Verwirrung führt manchmal zu unglücklichen hybriden Datenstrukturen, die halb Objekt- …

2
Wie soll ich mit der Validierung und Speicherung von Entitäten umgehen, wenn ich SRP folge?
Ich habe in letzter Zeit Clean Code und verschiedene Online-Artikel über SOLID gelesen. Je mehr ich darüber lese, desto mehr habe ich das Gefühl, nichts zu wissen. Angenommen, ich erstelle eine Webanwendung mit ASP.NET MVC 3. Angenommen, ich habe eine UsersControllermit einer CreateAktion wie dieser: public class UsersController : Controller …

3
Lange Parameterliste versus lange Statusvariablenliste
In einem C ++ - Buch sagt der Autor, dass wir keine Funktion mit einer langen Parameterliste mehr benötigen, da die meisten Parameter in Statusvariablen in einer Klasse umgestaltet werden können. Andererseits sagt ein funktionales Programmierbuch, dass Zustandsvariablen böse sind, weil sie Nebenwirkungen verursachen, die fehleranfällig und schwer zu parallelisierenden …

5
Verstößt es gegen das Open-Closed-Prinzip, eine Konstante zu aktualisieren, die einen realen Wert darstellt?
Ich habe eine Klasse, die das jährliche Nettoeinkommen der Arbeiter berechnet. Es hat eine Konstante, die einen Steuerprozentsatz darstellt. Aber eines Tages hat sich der Steuersatz geändert, daher muss ich den Code korrigieren. Zeigt das Festlegen dieser Konstante einen Verstoß gegen das Open-Closed-Prinzip an , da postuliert wird, dass eine …



3
"Factory Method ist eine Spezialisierung der Template Method". Wie?
Ähnlichkeiten und Unterschiede zwischen den beiden: Vorlagenmethode Verlässt sich auf Vererbung. Definiert die Schritte eines Algorithmus und überlässt die Implementierung dieser Schritte Unterklassen. Fabrikmethode Verlässt sich auf Vererbung. Eine Oberklasse definiert eine Schnittstelle zum Erstellen eines Objekts. Unterklassen entscheiden, welche konkrete Klasse instanziiert werden soll. Die beiden nebeneinander: Ich bin …


4
DDD-Ansatz für grundlegende CRUD-Operationen in einer komplexen domänenzentrierten Anwendung
Mein Unternehmen schreibt unsere Webanwendung von Grund auf neu. Es ist eine große Anwendung auf Unternehmensebene mit einer komplexen Domäne in der Finanzbranche. Wir verwenden ein ORM (Entity Framework) für die Persistenz. Im Wesentlichen konzentriert sich die Hälfte unserer Anwendung darauf, Rohdaten vom Benutzer zu sammeln, zu speichern, und die …

1
Geschäftslogik gegen Serviceschicht
Ich habe diese Antwort gelesen: https://softwareengineering.stackexchange.com/a/234254/173318 Bitte korrigieren Sie mein Verständnis. Geschäftsregeln beziehen sich auf die Liste der Geschäftsschritte in der realen Welt (keine Codes). Geschäftslogik bezieht sich auf den Prozess der Umwandlung der Geschäftsregeln in Codes und diese Art von Codes, die als "Geschäftslogik" bezeichnet werden. Und wofür wird …

2
Was macht den Iterator zu einem Entwurfsmuster?
Ich habe mich gefragt, was den Iterator im Vergleich zu anderen ähnlichen Konstrukten so besonders macht, und das hat die Viererbande dazu gebracht, ihn als Entwurfsmuster aufzulisten. Der Iterator basiert auf Polymorphismus (einer Hierarchie von Sammlungen mit einer gemeinsamen Schnittstelle) und der Trennung von Bedenken (das Durchlaufen der Sammlungen sollte …

4
Wie man Grenzen eines begrenzten Kontexts klar definiert
Nachdem ich ungefähr einen Monat lang DDD gelesen und recherchiert hatte, beschloss ich, mein eigenes Projekt zu starten und DDD mit diesen begrenzten Kontexten zu erstellen Kunden Produkte Aufträge Abrechnung Jeder begrenzte Kontext verfügt über eine Rest-API als Präsentationsschicht, Domänenschicht und persistente Schicht. So weit so gut, Code läuft reibungslos, …

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.