Als «design» getaggte Fragen

Fragen zur Problemlösung und Planung einer Lösung durch Software-Design.

3
Wie soll man Konstanten in mehreren Sprachen verwalten?
Ich habe eine Situation, in der ich eine funktionsgleiche Bibliothek in mehreren Sprachen unterstütze. Es gibt häufig Konstanten, die von diesen gemeinsam genutzt werden müssen (z. B. json-Feldnamenschlüssel oder Fehlercodes). Die Art und Weise, wie ich dies derzeit tue, ist, dass Code die Konstanten in jeder Sprache definiert. Das Problem …
13 design  packages 


8
Scrum-Team folgt nicht dem YAGNI-Prinzip
Bei einem SCRUM-Meeting diskutierte das Produktteam über eine Funktion einer API, die von der mobilen App genutzt wird. Wir hatten ein Modell, das zeigte, wie der Bildschirm aussehen sollte und welche Schlüsselelemente er enthalten sollte (ein "Layout"). Auf dieser Grundlage und der Diskussion mit dem Produktbesitzer habe ich einen Prototyp …

3
Aus welchen Gründen würden Sie eine separate Klassenerweiterung für jeden Delegierten in Swift verwenden?
Ich habe ein Ray Wenderlich-Tutorial durchgearbeitet und festgestellt, dass der Autor Klassenerweiterungen verwendet, um Rückrufe von Stellvertretern zu speichern, anstatt sie in der Klasse selbst behandeln zu lassen, dh: Rückrufe innerhalb der Klassenerweiterung delegieren: extension LogsViewController : UIPopoverPresentationControllerDelegate { func adaptivePresentationStyleForPresentationController(controller: UIPresentationController, traitCollection: UITraitCollection) -> UIModalPresentationStyle { ... } } …

3
Wie kann man unter bestimmten Bedingungen die Aufmerksamkeit des Programmierers auf sich ziehen?
Beginnen wir mit einem Beispiel. Nehmen wir an, ich habe eine Methode namens export, die stark vom DB-Schema abhängt. Und mit „stark abhängig“ meine ich, dass das Hinzufügen einer neuen Spalte zu einer bestimmten Tabelle oft (sehr oft) zu einer entsprechenden exportMethodenänderung führt (normalerweise sollten Sie das neue Feld auch …

3
Was ist ein gutes Design, um die Abwärtskompatibilität von Dateien zwischen verschiedenen Softwareversionen zu ermöglichen?
Was ist ein gutes Design, um die Abwärtskompatibilität eines Dateityps zwischen verschiedenen Softwareversionen zu ermöglichen? Beispiel: Wie kann Microsoft Word 2007, 2010 und 2013 usw. in alle geöffneten DocX-Dateien übernehmen? Unterschiedliche Editionen können jedoch mehr oder weniger Daten speichern und die Daten auf leicht unterschiedliche Weise speichern, und zwar alle …

5
Wie kann man einen Test von den Ergebnissen eines anderen Tests abhängig machen?
Angenommen, es gibt eine Utility-Klasse, die einige häufig verwendete statische Methoden enthält, die von vielen anderen Klassen überall in Ihrem Code verwendet werden. Wie würden Sie Ihre Komponententests für die Verbraucher des Versorgungsunternehmens auslegen, damit deren Tests fehlschlagen, wenn einer der Versorgungstests nicht bestanden wird? Können Sie das tun oder …


4
Rails: Gesetz der Demeter-Verwirrung
Ich lese ein Buch mit dem Titel Rails AntiPatterns und sie sprechen über die Verwendung von Delegationen, um das Gesetz von Demeter nicht zu brechen. Hier ist ihr Paradebeispiel: Sie glauben, dass es schlecht ist, so etwas im Controller aufzurufen (und ich stimme zu) @street = @invoice.customer.address.street Ihre vorgeschlagene Lösung …


4
Benötigen diese speziellen Tabellen Ersatzschlüssel?
Hintergrund Ich habe diese Tische +-------------------------+ +------------------------+ |Airport | |Country | |-------------------------| |------------------------| |airport_code string (PK) | |country_code string (PK)| |address string | |name string | |name string | +------------------------+ +-------------------------+ +-------------------------+ |Currency | |-------------------------| |currency_code string (PK)| |name string | +-------------------------+ AIRPORT_CODE ist der IATA (International Air Transport Association) …

3
Prinzip der Abhängigkeitsumkehrung: Wie definieren Sie "Richtlinien auf hoher Ebene" und "Details auf niedriger Ebene" für andere Personen?
Ich versuche, meinen (meist jüngeren) Kollegen das Prinzip der Abhängigkeitsinversion zu erklären. Wie können wir definieren, welches die "High-Level-Policy" und welches das "Low-Level-Detail" in einer Software ist? Wenn unsere Software beispielsweise den Workflow mehrerer Geschäftsanwendungen automatisiert, warum ist die Workflow-Automatisierung dann die übergeordnete Richtlinie und die Geschäftsanwendungen sind die Details?

2
Vor- und Nachteile der Strukturierung des gesamten Codes über Klassen und der Kompilierung in Klassen (wie Java)
Bearbeiten: Meine Sprache erlaubt im Gegensatz zu Java Mehrfachvererbung. Ich habe begonnen, meine eigene Programmiersprache für Bildungs-, Freizeit- und potenziell nützliche Zwecke zu entwerfen und zu entwickeln. Zuerst habe ich mich entschlossen, es auf Java aufzubauen. Dies implizierte, dass der gesamte Code in Form von Klassen geschrieben und dieser Code …

1
Ist das Einwickeln eines Drittanbieter-Codes die einzige Lösung, um seine Verbraucher einem Unit-Test zu unterziehen?
Ich mache Unit-Tests und in einer meiner Klassen muss ich eine Mail von einer der Methoden senden, also füge ich mit Hilfe der Konstruktorinjektion eine Instanz der Zend_MailKlasse ein, die im Zend-Framework ist. Nun argumentieren einige Leute, wenn eine Bibliothek stabil genug ist und sich nicht oft ändert, besteht keine …


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.