2008-09-12 10 views
3

Aus einer Unternehmens-IT-Umgebung stammend, erstellte der Standard immer ein Klassenbibliotheksprojekt für jede Ebene, Geschäftslogik, Datenzugriff und manchmal auch eine größere Isolation bestimmter Typen.Soll ich mehrere Assemblys für eine isolierte ASP.NET-Webanwendung verwenden?

Jetzt, da ich an meinem eigenen Web-Anwendungsprojekt arbeite, sehe ich keinen wirklichen Bedarf, meinen Code auf diese Weise zu isolieren.

Ich habe nicht mehrere Anwendungen, die diese Logik oder Service freigeben müssen. Ich sehe auch keinen Vorteil für Bereitstellungsszenarien.

Ich bin darauf ausgerichtet, alle Artefakte in einer Web-Anwendung, logisch durch Projektordner getrennt.

Ich wollte wissen, was die Gedanken der Gemeinschaft sind.


Lassen Sie mich Weitere Informationen hinzufügen ...

ich diese Anwendung schreibe mit MVC Vorschau 5, so wird das Gerät Teststück durch die Trennung von Bedenken erben im Rahmen unterstützt werden. Ich mag es, Tests für alles zu haben!

Antwort

1

Beginnen Sie mit der einfachsten Sache und fügen Sie bei Bedarf Komplexität hinzu. Hört sich an, als würde eine einzelne Baugruppe für Ihren Fall gut funktionieren. Achten Sie jedoch darauf, die Layer nicht zu verletzen, indem Layer A auf ein internes Member von Layer B zugreift. Dies würde es erschweren, die Layer zu einem späteren Zeitpunkt in separate Assemblies zu ziehen.

0

Ich würde sagen, es hängt davon ab, wie ernst Sie über das Testen und Komponententests sind.

Wenn Sie vorhaben, nur Benutzer-/manuelle Tests durchzuführen oder grundsätzlich nur von der Benutzeroberfläche aus nach unten zu testen, dann macht dies keinen wirklichen Unterschied.

Auf der anderen Seite ist es sinnvoll, wenn Sie eine Art Komponententest oder eine Validierung von Geschäftsregeln durchführen möchten, dass Sie Ihre Arbeit in verschiedene Baugruppen aufteilen.

Auch für kleinere persönliche Projekte finde ich, dass dieser Ansatz mein Leben einfacher macht, während das Projekt weitergeht. Ich betreibe immer noch alles von der gleichen Lösung, nur mit einem Webprojekt für die Benutzeroberfläche, einer Bibliothek für die Geschäftsregeln/Anwendungslogik und einer anderen Bibliothek für die DAL.

0

Sie sollten logische Schichten immer noch in die richtigen Projekte trennen.

Das ist eine gute technische Praxis, ob Sie nur 1 Entwickler oder 100 sind. Das Negative über den Code an einem Ort ist, dass Sie Code für die Erweiterung umgestalten oder duplizieren werden.

+0

Können Sie ein Beispiel geben, wo ich den Code basierend auf Refactoring oder Expansion teilen müsste? –

Verwandte Themen