Als «design-patterns» getaggte Fragen

Ein Entwurfsmuster ist eine allgemeine wiederverwendbare Lösung für ein häufig auftretendes Problem beim Software-Entwurf.


16
Was ist das am häufigsten verwendete Entwurfsmuster? [geschlossen]
Aus heutiger Sicht passt diese Frage nicht zu unserem Q & A-Format. Wir erwarten, dass die Antworten durch Fakten, Referenzen oder Fachwissen gestützt werden, aber diese Frage wird wahrscheinlich Debatten, Argumente, Abstimmungen oder erweiterte Diskussionen hervorrufen. Wenn Sie der Meinung sind, dass diese Frage verbessert und möglicherweise erneut geöffnet werden …



5
Warum wurde es nicht zu einem gängigen Muster, Setter im Konstruktor zu verwenden?
Accessoren und Modifikatoren (auch Setter und Getter genannt) sind aus drei Hauptgründen nützlich: Sie schränken den Zugriff auf die Variablen ein. Zum Beispiel kann auf eine Variable zugegriffen, aber nicht geändert werden. Sie validieren die Parameter. Sie können einige Nebenwirkungen verursachen. Universitäten, Online-Kurse, Tutorials, Blog-Artikel und Codebeispiele im Internet betonen …

4
Legitime "echte Arbeit" in einem Konstruktor?
Ich arbeite an einem Design, stoße aber immer wieder auf eine Straßensperre. Ich habe eine bestimmte Klasse (ModelDef), die im Wesentlichen der Eigentümer eines komplexen Knotenbaums ist, der durch Analysieren eines XML-Schemas (Think DOM) erstellt wurde. Ich möchte guten Konstruktionsprinzipien (SOLID) folgen und sicherstellen, dass das resultierende System leicht testbar …

3
Soll die Serviceebene alle Dao-Ausnahmen erfassen und als Service-Ausnahmen einschließen?
Ich habe eine dreischichtige Spring-Web-App: Dao, Service und Controller. Ein Controller ruft niemals direkt das Dao an, sondern tut dies über die Service-Schicht. Derzeit wird eine Ausnahme (Laufzeit), die nicht behandelt wird, in den meisten Fällen von einer JSP abgefangen, die dem Endbenutzer eine Fehlermeldung anzeigt. Soll die Serviceebene alle …

2
Entwurfsmuster für die Datenüberprüfung
Was wäre das beste Entwurfsmuster für dieses Problem: Ich habe ein Objekt A. Objekt A kann abhängig von der Benutzeranforderung entweder registriert oder aus der Datenbank gelöscht werden. Die Datenvalidierung erfolgt vor der Registrierung oder Löschung des Objekts. Es gibt eine Reihe von Regeln, die überprüft werden müssen, bevor das …

5
Erfolg: / Misserfolg: Blöcke vs. Abschluss: Block
In Objective-C sehe ich zwei gebräuchliche Muster für Blöcke. Eines ist ein Paar von Erfolg: / Misserfolg: Blöcke, das andere ist eine einzelne Vervollständigung: Block. Angenommen, ich habe eine Aufgabe, die ein Objekt asynchron zurückgibt, und diese Aufgabe schlägt möglicherweise fehl. Das erste Muster ist -taskWithSuccess:(void (^)(id object))success failure:(void (^)(NSError …


8
Wie implementiere ich das DRY-Prinzip, wenn ich das Schlüsselwort 'using' verwende?
Betrachten Sie diese Methoden: public List<Employee> GetAllEmployees() { using (Entities entities = new Entities()) { return entities.Employees.ToList(); } } public List<Job> GetAllJobs() { using (Entities entities = new Entities()) { return entities.Jobs.ToList(); } } public List<Task> GetAllTasksOfTheJob(Job job) { using (Entities entities = new Entities()) { return entities.Tasks.Where(t => t.JobId …

5
Wie würde eine andere beliebte Sprache vermeiden, das Factory-Muster zu verwenden, während sie eine ähnliche Komplexität wie in Java / Java EE verwaltet?
Factory-Pattern (oder zumindest die Verwendung von FactoryFactory..) ist der Kern vieler Witze, wie hier . Abgesehen von ausführlichen und "kreativen" Namen wie " RequestProcessorFactoryFactory.RequestProcessorFactory" ist das Factory-Muster grundlegend falsch, wenn Sie in Java / C ++ programmieren müssen und es einen Verwendungszweck für " Abstract_factory_pattern" gibt . Wie würde eine …


6
Ist lose Kupplung ohne Use Cases ein Anti-Pattern?
Lose Kopplung ist für einige Entwickler das Allerheiligste an ausgereifter Software. Es ist auf jeden Fall eine gute Sache, wenn Code angesichts von Änderungen, die in absehbarer Zukunft wahrscheinlich auftreten werden, flexibler wird oder wenn Code-Duplikationen vermieden werden. Auf der anderen Seite erhöhen Bemühungen, Komponenten lose zu koppeln, die Indirektion …

4
Ist funktionale Programmierung eine praktikable Alternative zu Abhängigkeitsinjektionsmustern?
Ich habe kürzlich ein Buch mit dem Titel Functional Programming in C # gelesen, und mir fällt auf, dass die unveränderliche und zustandslose Natur der funktionalen Programmierung ähnliche Ergebnisse wie die Abhängigkeitsinjektionsmuster erzielt und möglicherweise sogar ein besserer Ansatz ist, insbesondere im Hinblick auf Komponententests. Ich wäre dankbar, wenn jeder, …

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.