Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Per visualizzare l'architettura logica di alto livello del sistema software, creare un diagramma dependency in Visual Studio. Per assicurarsi che il codice rimanga coerente con questa progettazione, convalidare il codice con un diagramma delle dipendenze. È possibile creare diagrammi di dipendenza per i progetti Visual C# e Visual Basic. Per vedere quali edizioni di Visual Studio supportano questa funzionalità, vedere Supporto dell'edizione per gli strumenti di architettura e modellazione.
Un diagramma delle dipendenze consente di organizzare Visual Studio elementi della soluzione in gruppi logici e astratti denominati layers. È possibile usare i livelli per descrivere le attività principali eseguite da questi artefatti o i componenti principali del sistema.
Ogni livello può contenere altri livelli che descrivono attività più dettagliate. È anche possibile specificare le dipendenze previste o esistenti tra i livelli. Queste dipendenze, rappresentate come frecce, mostrano i livelli che usano o possono usare la funzionalità rappresentata da altri livelli. Per mantenere il controllo dell'architettura del codice, visualizzare le dipendenze desiderate nel diagramma e quindi convalidare il codice rispetto al diagramma.
Video: Convalidare le dipendenze dell'architettura in tempo reale
Creare un diagramma delle dipendenze
Prima di creare un diagramma delle dipendenze, assicurarsi che la soluzione abbia un progetto di modellazione.
Importante
Non aggiungere, trascinare o copiare un diagramma delle dipendenze esistente da un progetto di modellazione a un altro progetto di modellazione o in un'altra posizione nella soluzione. In questo modo vengono mantenuti i riferimenti dal diagramma originale, anche se si modifica il diagramma. Ciò impedisce inoltre il corretto funzionamento della convalida dei livelli e potrebbe causare altri problemi, ad esempio elementi mancanti o altri errori quando si tenta di aprire il diagramma.
Aggiungere invece un nuovo diagramma delle dipendenze al progetto di modellazione. Copiare gli elementi dal diagramma di origine al nuovo diagramma. Salvare entrambi, il progetto di modellazione e il nuovo diagramma delle dipendenze.
Aggiungere un nuovo diagramma delle dipendenze a un progetto di modellazione
Annotazioni
I diagrammi di dipendenza per i progetti .NET Core sono supportati a partire da Visual Studio 2019 versione 16.2.
Fare clic con il pulsante destro del mouse sul progetto di modellazione in Esplora soluzioni e selezionare Aggiungi>Nuovo elemento.
Nella finestra Aggiungi nuovo elemento selezionare Diagramma di convalida delle dipendenze, immettere un nome per il diagramma nella parte inferiore della finestra e quindi selezionare Aggiungi.
Trascinare e rilasciare, o copiare e incollare, da una mappa del codice
Generare una mappa codice per la soluzione usando il menu Architettura .
È consigliabile applicare un filtro Mappa codice per rimuovere le cartelle delle soluzioni e "Risorse di test" se si vogliono imporre solo le dipendenze nel codice prodotto.
Nella mappa codice generata, rimuovere il nodo "Esterno" o espanderlo per mostrare gli assembly esterni, a seconda se si desidera applicare le dipendenze dello spazio dei nomi. Eliminare assembly non necessari dalla Mappa del Codice.
Aggiungere un elemento Diagramma di convalida delle dipendenze al progetto Convalida delle dipendenze nella soluzione.
Selezionare tutti i nodi nella mappa del codice (usare CTRL + A oppure usare la selezione della banda di gomma premendo MAIUSC prima di fare clic, trascinare e rilasciare).
Trascinare e rilasciare o copiare e incollare gli elementi selezionati nel nuovo diagramma di convalida delle dipendenze.
Viene visualizzata l'architettura dell'app corrente. Decidere cosa si vuole che l'architettura sia e modificare di conseguenza il diagramma delle dipendenze.
Creare livelli da artefatti
È possibile creare livelli da Visual Studio elementi della soluzione, ad esempio progetti, file di codice, spazi dei nomi, classi e metodi. In questo modo vengono creati automaticamente collegamenti tra livelli ed elementi, inclusi nel processo di convalida del livello.
È possibile collegare livelli a elementi che non supportano la convalida, ad esempio Word documenti o presentazioni PowerPoint. In questo modo è possibile associare un livello a specifiche o piani. È anche possibile collegare i livelli ai file nei progetti condivisi tra più app, ma il processo di convalida non includerà tali livelli, che vengono visualizzati con nomi generici come "Livello 1" e "Livello 2".
Per verificare se un elemento collegato supporta la convalida, aprire Esplora layer ed esaminare la proprietà Supports Validation dell'elemento. Vedere Gestione dei collegamenti agli artefatti.
| To | Seguire questa procedura |
|---|---|
| Creare un livello per un singolo artefatto |
Importante: Il trascinamento di file binari nel diagramma delle dipendenze non aggiunge automaticamente i riferimenti al progetto di modellazione. Aggiungere manualmente i file binari da convalidare al progetto di modellazione. Per aggiungere file binari al progetto di modellazione
|
| Creare un singolo livello per tutti gli artefatti selezionati | Trascinare tutti gli artefatti nel diagramma delle dipendenze contemporaneamente. Viene visualizzato un livello nel diagramma ed è collegato a tutti gli artefatti. |
| Creare un livello per ogni artefatto selezionato | Tenere premuto MAIUSC mentre si trascinano tutti gli artefatti nel diagramma delle dipendenze contemporaneamente. Nota: Se si usa il tasto MAIUSC per selezionare un intervallo di elementi, rilasciare la chiave dopo aver selezionato gli artefatti. Tenere premuto di nuovo mentre trascinate gli artefatti sul diagramma. Un livello per ogni artefatto viene visualizzato nel diagramma ed è collegato a ogni artefatto. |
| Aggiungere un artefatto a un livello | Trascina l'oggetto nel livello. |
| Creare un nuovo livello non collegato | Nella casella degli strumenti espandere la sezione Diagramma delle dipendenze e quindi trascinare un livello nel diagramma delle dipendenze. Per aggiungere più livelli, fare doppio clic sullo strumento. Al termine, scegliere lo strumento Puntatore o premere ESC. o Aprire il menu di scelta rapida per il diagramma delle dipendenze, scegliere Aggiungi e quindi scegliere Livello. |
| Creare livelli annidati | Trascinare un livello esistente su un altro livello. o Aprire il menu di scelta rapida per un livello, scegliere Aggiungi e quindi scegliere Livello. |
| Creare un nuovo livello contenente due o più livelli esistenti | Selezionare i livelli, aprire il menu di scelta rapida per la selezione e quindi scegliere Gruppo. |
| Modificare il colore di un livello | Impostare la relativa proprietà Color sul colore desiderato. |
| Specificare che gli artefatti associati a un livello non devono appartenere agli spazi dei nomi specificati | Digitare gli spazi dei nomi nella proprietà Spazi dei nomi non consentiti del layer. Usare un punto e virgola (;) per separare gli spazi dei nomi. |
| Specificare che gli artefatti associati a un layer non possono dipendere dagli spazi dei nomi specificati | Digitare gli spazi dei nomi nella proprietà Dipendenze su spazi dei nomi vietati del livello. Usare un punto e virgola (;) per separare gli spazi dei nomi. |
| Specificare che gli artefatti associati a un livello devono appartenere a uno dei namespace specificati | Digitare lo spazio dei nomi nella proprietà Required Namespaces del layer. Usare un punto e virgola (;) per separare gli spazi dei nomi. |
Il numero di un livello indica il numero di artefatti collegati al livello. Tuttavia, quando si legge questo numero, tenere presente quanto segue:
Se un livello è collegato a un artefatto che contiene altri artefatti, ma il livello non è collegato direttamente agli altri artefatti, il numero include solo l'artefatto collegato. Tuttavia, gli altri artefatti sono inclusi per l'analisi durante la convalida del livello.
Ad esempio, se un livello è collegato a un singolo spazio dei nomi, il numero di artefatti collegati è 1, anche se lo spazio dei nomi contiene classi. Se il livello include anche collegamenti a ogni classe nello spazio dei nomi, il numero includerà le classi collegate.
Se un livello contiene altri livelli collegati agli artefatti, anche il livello contenitore è collegato a tali artefatti, anche se il numero nel livello contenitore non include tali artefatti.
Gestire i collegamenti tra livelli e artefatti
Nel diagramma delle dipendenze aprire il menu di scelta rapida per il livello e quindi scegliere Visualizza collegamenti.
Layer Explorer mostra i collegamenti agli artefatti per il livello selezionato.
Usare le attività seguenti per gestire questi collegamenti:
| To | In Layer Explorer |
|---|---|
| Eliminare il collegamento tra il livello e un artefatto | Aprire il menu di scelta rapida per il collegamento all'artefatto e quindi scegliere Elimina. |
| Spostare il collegamento da un livello a un altro | Trascina il collegamento dell'artefatto su un livello esistente nel diagramma. o 1. Aprire il menu di scelta rapida per il collegamento dell'artefatto e quindi scegliere Taglia. 2. Nel diagramma delle dipendenze aprire il menu di scelta rapida per il livello e quindi scegliere Incolla. |
| Copiare il collegamento da un livello a un altro | 1. Aprire il menu di scelta rapida per il collegamento dell'artefatto e quindi scegliere Copia. 2. Nel diagramma delle dipendenze aprire il menu di scelta rapida per il livello e quindi scegliere Incolla. |
| Creare un nuovo livello da un collegamento di artefatto esistente | Trascinare il collegamento dell'artefatto a un'area vuota nel diagramma. |
| Verificare che un artefatto collegato supporti la convalida rispetto al diagramma delle dipendenze. | Consultare la colonna Convalida supporti per il collegamento dell'artefatto. |
Fare il reverse engineering delle dipendenze esistenti
Esiste una dipendenza ovunque un artefatto associato a un livello abbia un riferimento a un artefatto associato a un altro livello. Ad esempio, una classe in un livello dichiara una variabile con una classe in un altro livello. È possibile fare il reverse engineering delle dipendenze esistenti degli artefatti collegati ai livelli del diagramma.
Annotazioni
Non è possibile fare l'ingegneria inversa delle dipendenze per alcuni tipi di artefatti. Ad esempio, nessuna dipendenza verrà ingegnerizzata al contrario da o verso un livello collegato a un file di testo. Per visualizzare gli elementi con dipendenze che è possibile decompilare, aprire il menu di scelta rapida per uno o più livelli e quindi scegliere Visualizza collegamenti. In Esplora layer, esamina la colonna Convalida dei supporti. Le dipendenze non verranno analizzate inversamente per gli artefatti per i quali questa colonna mostra False.
Selezionare uno o più livelli, aprire il menu di scelta rapida per un livello selezionato e quindi scegliere Genera dipendenze.
Se vengono visualizzate alcune dipendenze che non devono esistere, è possibile modificare queste dipendenze per allinearle alla progettazione prevista.
Modificare livelli e dipendenze per visualizzare la progettazione prevista
Per descrivere le modifiche che si prevede di apportare al sistema o all'architettura desiderata, modificare il diagramma delle dipendenze:
| To | Eseguire questi passaggi |
|---|---|
| Modificare o limitare la direzione di una dipendenza | Impostarne la proprietà Direction . |
| Creare nuove dipendenze | Usare gli strumenti Dipendenze e Dipendenze bidirezionali . Per disegnare più dipendenze, fare doppio clic sullo strumento. Al termine, scegliere lo strumento Puntatore o premere ESC. |
| Specificare che gli artefatti associati a un layer non possono dipendere dagli spazi dei nomi specificati | Digitare gli spazi dei nomi nella proprietà Dipendenze su spazi dei nomi vietati del livello. Usare un punto e virgola (;) per separare gli spazi dei nomi. |
| Specificare che gli artefatti associati a un livello non devono appartenere agli spazi dei nomi specificati | Digitare gli spazi dei nomi nella proprietà Spazi dei nomi non consentiti del layer. Usare un punto e virgola (;) per separare gli spazi dei nomi. |
| Specificare che gli artefatti associati a un livello devono appartenere a uno dei namespace specificati | Digitare lo spazio dei nomi nella proprietà Required Namespaces del layer. Usare un punto e virgola (;) per separare gli spazi dei nomi. |
Modificare la modalità di visualizzazione degli elementi nel diagramma
È possibile modificare le dimensioni, la forma, il colore e la posizione dei livelli o il colore delle dipendenze modificando le relative proprietà.
Individuare modelli e dipendenze da una mappa del codice
Durante la creazione di diagrammi di dipendenza, è anche possibile creare mappe del codice. Questi diagrammi consentono di individuare modelli e dipendenze durante l'esplorazione del codice. Usare Esplora soluzioni, Visualizzazione classi o Visualizzatore oggetti per esplorare assembly, spazi dei nomi e classi, che spesso corrispondono bene ai livelli esistenti. Per altre informazioni sulle mappe codici, vedere:
Usare le mappe del codice per eseguire il debug delle applicazioni
Individuare potenziali problemi con gli analizzatori della mappa del codice
Contenuti correlati
- Supporto delle versioni per gli strumenti di architettura e modellazione
- Video: Convalidare le dipendenze dell'architettura in tempo reale
- Diagrammi delle dipendenze: Informazioni di riferimento
- Diagrammi delle dipendenze: linee guida
- Convalidare il codice con diagrammi di dipendenza
- Visualizzare il codice