Softwareentwicklung

Fragen und Antworten für Fachleute, Akademiker und Studenten, die im Lebenszyklus der Systementwicklung arbeiten

3
IValidatableObject vs Single Responsibility
Mir gefällt der Extnesibility Point von MVC, mit dem Ansichtsmodelle IValidatableObject implementieren und benutzerdefinierte Validierungen hinzufügen können. Ich versuche, meine Controller schlank zu halten, wobei dieser Code die einzige Validierungslogik ist: if (!ModelState.IsValid) return View(loginViewModel); Ein Anmeldeansichtsmodell implementiert beispielsweise IValidatableObject und ruft das ILoginValidator-Objekt über die Konstruktorinjektion ab: public interface …

2
Alle Unit-Tests in einer ausführbaren Datei oder aufteilen?
Möchten Sie beim Schreiben von Tests für eine Software, z. B. eine Bibliothek, alle Komponententests zu einem einzigen kompilieren oder in mehrere ausführbare Dateien aufteilen? Der Grund, den ich frage , ist, dass ich derzeit CUnit verwende , um eine Bibliothek zu testen, an der ich arbeite. Die Tests sind …

2
Wie kann man dieses Design näher an die richtige DDD bringen?
Ich habe seit Tagen über DDD gelesen und brauche Hilfe bei diesem Beispieldesign. Alle DDD-Regeln verwirren mich sehr, wie ich überhaupt etwas erstellen soll, wenn Domänenobjekte der Anwendungsebene keine Methoden anzeigen dürfen. Wo sonst kann man Verhalten orchestrieren? Repositorys dürfen nicht in Entitäten injiziert werden, und die Entitäten selbst müssen …

2
Welche rechtlichen Risiken bestehen bei der Verwendung einer GPL oder eines AGPL Web Application Framework / CMS?
Versuchte dies auf SO zu fragen, wurde aber hier verwiesen ... Habe ich Recht, wenn ich sage, dass die Verwendung eines GPL-basierten Webanwendungsframeworks wie Composite C1 ein Unternehmen NICHT dazu verpflichten würde, den Quellcode, den wir für dieses Framework schreiben, mit anderen zu teilen? Das ist der Zweck der AGPL, …



4
Wie führt die Java Virtual Machine in anderen Sprachen geschriebenen Code aus?
Seit Java 1.6 kann die JVM eine Vielzahl von Programmiersprachen anstelle von Java ausführen. Ich verstehe konzeptionell, wie Java auf der Java-VM ausgeführt wird, aber nicht, wie auch andere Sprachen darauf ausgeführt werden können. Für mich sieht alles nach schwarzer Magie aus. Haben Sie Artikel, auf die ich verweisen kann, …
12 jvm 


7
Wie gehen Sie mit der Datenbanksicherheit in einer Desktop-Anwendung um?
Seit ungefähr 10 Jahren arbeite ich an verschiedenen internen Desktop-Client-Anwendungen mit SQL Server-Datenspeichern. Selten habe ich diese Projekte gestartet - die meisten sind Übernahmearbeiten. Eine Sache, die überall konstant schien, war, dass es ein einziges globales SQL Server-Benutzerkonto gab, das von dieser Anwendung verwendet wurde und das die Berechtigung für …

4
Entwurfsmuster / Strategien für benutzerdefinierte Felder und Datentypen
Gibt es gemeinsame Strategien oder Entwurfsmuster für den Entwurf von Anwendungen, mit denen Sie Datenobjekten benutzerdefinierte Felder hinzufügen oder Ihre eigene benutzerdefinierte Definition von Objekten erstellen können? Ich denke zum Beispiel an Produkte wie SalesForce, in denen Sie Ihre eigenen Arten von Informationen haben können, Frameworks wie Expression Engine und …


4
Was genau beinhaltet 'Dokumentation'?
Wenn wir "Dokumentation" für ein Softwareprodukt sagen, was beinhaltet das und was sollte das nicht beinhalten? Beispiel: Eine kürzlich gestellte Frage, ob Kommentare als Dokumentation betrachtet werden. Es gibt aber auch viele andere Bereiche, für die dies eine berechtigte Frage ist, von denen einige offensichtlicher sind als andere: Handbücher (offensichtlich) …


5
Ist Überlastung ein Beispiel für das Open / Closed-Prinzip?
Wikipedia sagt "Software-Entitäten (Klassen, Module, Funktionen usw.) sollten zur Erweiterung geöffnet, zur Änderung jedoch geschlossen sein" Das Wort Funktionen ist mir aufgefallen und ich frage mich jetzt, ob wir davon ausgehen können, dass das Erzeugen einer Überladung für eine Methode als Beispiel für das Open / Closed-Prinzip angesehen werden kann …

3
Wie TDD, dass die richtigen Ergebnisse zurückgegeben werden
Ich starte ein neues Projekt und bemühe mich sehr, TDD zu verwenden, um das Design voranzutreiben. Ich habe jahrelang Druck gemacht und endlich die Genehmigung erhalten, die zusätzliche Zeit für dieses Projekt zu verwenden, während ich lerne, wie man es richtig macht. Dies ist ein neues Modul, um in ein …

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.