5

Chcę rozpocząć nową aplikację na ASP.NET MVC4 przy użyciu różnych metod, takich jak rozwój oparty na domenie, wzorce projektowe, wtrysk zależności, struktura Entity jako ORM itp.Jak skutecznie wykorzystywać rozwój oparty na domenie w asp.net mvc4?

Potrzebujesz porady na temat tego, co powinno być punktem wyjścia do rozwoju ? Czy powinienem zacząć od pierwszych relacji klas lub zacząć od tradycyjnego podejścia? np. Są trzy moduły.

  1. Zarządzanie użytkownikami.
  2. Rejestrowanie.
  3. Rejestrowanie błędów.

Czy powinienem najpierw uzupełnić zarządzanie użytkownikami, takie jak klasy domenowe, a następnie usługi, a następnie operacje CRUD w rzeczywistej aplikacji internetowej? a po tym ... rozpocznie się od logowania (ten sam proces, co w zarządzaniu użytkownikami). a następnie w logowaniu błędów.

Więc Jakie są najlepsze praktyki, aby rozpocząć rozwój przy użyciu tego rodzaju koncepcji lub narzędzi?

Odpowiedz

10

ASP.NET MVC4 to tylko część prezentacji rozwiązania. W przypadku podejścia opartego na domenie zacznij od domeny (zwykle oddzielnego projektu bibliotecznego), a następnie dodaj prezentację (stronę internetową, aplikację komputerową itp.) I trwałość (implementację repozytorium i interfejsów użytkownika zadeklarowanych w Twojej domenie).

Zacznij więc od utworzenia modelu domeny (nie całości, ale część tego). Następnie w dowolnej kolejności tworzy się interfejs użytkownika, który wykorzystuje model domeny, oraz implementację repozytoriów do utrzymywania modelu domeny za pośrednictwem Entity Framework. W rzeczywistości widoki powinny używać ViewModels (w przeciwnym razie obiekty z twojej domeny POCO będą zanieczyszczone atrybutami Adnotacje danych i innymi rzeczami). To część kontrolera, w której użyjesz modelu domeny. Wprowadzasz również implementacje repozytoriów do kontrolerów za pomocą wtrysku zależności.

+0

Więc próbujesz powiedzieć, że najpierw powinniśmy stworzyć model domeny dla wszystkich modułów, a następnie wykorzystać te model domeny w ramach prezentacji ? –

+2

@DharmikBhandari nie jest konieczne dla wszystkich modułów (tylko jeśli idziesz na wodospad DDD). Utwórz aplikację iteracyjnie. Na przykład. stwórz jakiś agregat root. Następnie utwórz repozytorium dla tego agregatu. Następnie dodaj interfejs użytkownika do operacji CRUD na tym katalogu głównym. Po tej iteracji będziesz miał działający kawałek aplikacji. Następnie rozszerz domenę o nowe obiekty i usługi i twórz dla nich trwałość i interfejs użytkownika. –

+1

@lazyberezosky: to musi być świetna odpowiedź. To bardzo mi pomaga. Dziękuję bardzo –

5

Zacznę od sprawdzenia wymagań funkcjonalności systemu i skupienia się na wymaganiach najwyższej wartości. Zaimplementuj te, wypełniając domenę biznesową zgodnie z potrzebami, w oparciu o dostarczanie wymagań. Jeśli postępujesz zgodnie z procesem BDD, możesz użyć testów jednostkowych, aby wyprzeć funkcjonalność biznesową, a Twoja domena będzie ewoluować wraz z ewolucją wymagań biznesowych. Każde wymaganie biznesowe powinno zawierać składnik interfejsu użytkownika i dostęp do danych, aby można było wypełnić warstwę prezentacji i warstwę dostępu do danych za pomocą Entity Framework w miarę ewoluowania domeny. Oto kilka przydatnych postów na BDD:

Powiązane problemy