Als «design-patterns» getaggte Fragen

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

3
Was ist der Sinn des PImpl-Musters, während wir das Interface in C ++ für den gleichen Zweck verwenden können?
Ich sehe eine Menge Quellcode, der PImpl-Idiom in C ++ verwendet. Ich gehe davon aus, dass der Zweck darin besteht, die privaten Daten / den Typ / die Implementierung zu verbergen, damit die Abhängigkeit beseitigt und die Kompilierungszeit und das Problem mit dem Header-Einschluss verringert werden können. Interface- / pure-abstract-Klassen …

11
Gibt es ein kanonisches Buch über Designmuster? [geschlossen]
Ich interessiere mich für das Erlernen von Entwurfsmustern und möchte wissen, was als erstklassige Bücher für das Erlernen dieses Themas gelten. Gibt es ein Buch, das de facto als Standard für die Beschreibung von Best Practices, Entwurfsmethoden und anderen hilfreichen Informationen zu Entwurfsmustern gilt? Was macht dieses Buch so besonders?


5
Builder-Muster: Wann sollte ein Fehler auftreten?
Bei der Implementierung des Builder-Musters stelle ich häufig fest, wann das Erstellen fehlschlagen soll, und es gelingt mir sogar, alle paar Tage andere Standpunkte in dieser Angelegenheit zu vertreten. Zunächst einige Erklärungen: Mit frühzeitig fehlschlagen meine ich, dass das Erstellen eines Objekts fehlschlagen sollte, sobald ein ungültiger Parameter übergeben wird …


11
Sind Fehlervariablen ein Anti-Pattern oder ein gutes Design?
Um mehrere mögliche Fehler zu behandeln, die die Ausführung nicht anhalten sollten, habe ich eine errorVariable, die Clients überprüfen und zum Auslösen von Ausnahmen verwenden können. Ist das ein Anti-Pattern? Gibt es eine bessere Möglichkeit, damit umzugehen? Ein Beispiel dafür finden Sie in der mysqli- API von PHP . Angenommen, …

2
Was ist der Zweck des NaN-Boxens?
Als ich das 21. Jahrhundert C las , kam ich zu Kapitel 6 im Abschnitt "Markieren außergewöhnlicher numerischer Werte mit NaNs" , wo die Verwendung der Bits in der Mantisse zum Speichern von willkürlichen Bitmustern und deren Verwendung als Marker oder Zeiger erläutert wird (das Buch erwähnt dies) dass WebKit …

13
Entwurfsmuster - verwenden Sie sie?
Als IT-Student erhielt ich kürzlich von einem unserer Lehrer einen Überblick über Entwurfsmuster. Ich habe verstanden, wofür sie sind, aber einige Aspekte nerven mich immer noch. Werden sie wirklich von der Mehrheit der Programmierer verwendet? Apropos Erfahrung, ich hatte einige Probleme beim Programmieren, Dinge, die ich für eine Weile nicht …

5
Was sind die Nachteile von MVC? [geschlossen]
Ich benutze MVC / MV *, seit ich vor Jahren angefangen habe, meinen Code zu organisieren. Ich benutze es so lange, dass ich mir keine andere Möglichkeit vorstellen kann, meinen Code zu strukturieren, und jeder Job, den ich nach meinem Praktikum hatte, war MVC-basiert. Meine Frage ist, was sind die …


2
Ist die Leistung der einzige Grund, SignalR (Websockets) nicht vollständig anstelle einer herkömmlichen REST-API zu verwenden?
Ich habe SignalRin mehreren meiner Projekte Echtzeit-Messaging-Funktionen verwendet. Es scheint zuverlässig zu funktionieren und ist sehr einfach zu erlernen. Zumindest für mich ist die Versuchung, die Entwicklung eines Web-API-Dienstes aufzugeben und SignalRfür alles zu verwenden. Ich bin der Meinung, dass dies durch durchdachtes Design erreicht werden könnte, und wenn dies …




6
Warum sollte Java-Vererbung vermieden werden?
Sagte Jame Gosling "Sie sollten die Vererbung der Implementierung nach Möglichkeit vermeiden." Verwenden Sie stattdessen die Schnittstellenvererbung. Aber wieso? Wie können wir vermeiden, die Struktur eines Objekts mit dem Schlüsselwort "extend" zu erben, und gleichzeitig unseren Code objektorientiert machen? Könnte jemand bitte ein objektorientiertes Beispiel geben, das dieses Konzept in …

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.