Diagramma dei Package
É opportuno specificare fin da subito che in C# non esistono i package come in Java, pertanto sarebbe meglio riferirsi a questo diagramma pensandolo come diagramma dei Namespace.
Esso rappresenta appunto i Namespace di cui è costituita la nostra applicazione, tipici di un progetto .NET MVC. Abbiamo deciso di crearlo per specificare meglio l'architettura del nostro sistema e mostrare quali sono i blocchi logici che lo compongono.
Notiamo che la soluzione BrewDay! sia in sè e per sè articolata in due progetti:
BrewDay.Domain, corrisponde allo strato che di fatto concretizza il diagramma delle classi, in ciò che qui vengono definite Entities. Inoltre contiene la classe che rappresenta il database,
BrewDayContext
.BrewDay.Web, è lo strato che implementa effettivamente il modello MVC e quindi gestisce sia l'interfaccia utente (le View) sia gli entry point per la gestione delle regole di business (i Controller). Sottoinsieme di BrewDay.Web sono i Data Transfer Object (DTO), particolari oggetti creati con lo scopo di raggruppare informazioni solitamente appartenenti a Entità diverse, al fine di utilizzarle come un unico Model.
É immediato notare dal diagramma come il progetto Web sia totalmente dipendente dal progetto Domain.