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.
Usare Progettazione classi in Visual Studio per visualizzare la struttura del codice, progettare nuove classi e effettuare il refactoring dei tipi esistenti, tutti da un diagramma interattivo.
Con Progettazione classi è possibile creare diagrammi classi che mostrano gli elementi di codice e le relative relazioni in un'area di progettazione visiva. Questa visualizzazione consente di comprendere la struttura del progetto e riorganizzare il codice in modo più efficace.
Prerequisiti
- Visual Studio con il componente Progettazione classi installato. Vedere Installare il componente Progettazione classi.
- Progetto C#, Visual Basic o C++ destinato a .NET Framework. La Progettazione Classi non supporta .NET Core, .NET 5 o versioni successive.
Operazioni che è possibile eseguire con i diagrammi classi
I diagrammi classi supportano tre flussi di lavoro principali:
Progettazione: modificare il codice del progetto modificando il diagramma classi. Aggiungere nuovi elementi ed eliminare quelli indesiderati. Le modifiche vengono riflesse nel codice.
Visualizza: comprendere la struttura del progetto visualizzando le classi in un diagramma. Personalizzare il diagramma per concentrarsi sui dettagli più importanti. Salvare diagrammi per la documentazione o le presentazioni.
Refattorizzare: eseguire l'override dei metodi, rinominare gli identificatori, refattorizzare i parametri e implementare interfacce e classi astratte.
Visualizzare tipi e relazioni
I diagrammi classi visualizzano i dettagli del tipo, inclusi membri, proprietà e metodi, insieme alle relazioni tra i tipi. Il diagramma fornisce una visualizzazione dinamica bidirezionale del codice:
- Modificare i tipi nella finestra di progettazione e le modifiche vengono visualizzate nel codice sorgente.
- Modificare i file di codice sorgente e il diagramma classi viene aggiornato automaticamente.
Se il progetto fa riferimento a un tipo in un altro progetto, il diagramma classi non mostra tale tipo finché non si compila il progetto di riferimento. Analogamente, il diagramma non visualizza le modifiche apportate al codice esterno fino a quando non si ricompila il progetto.
Flusso di lavoro tipico
I diagrammi classi consentono di comprendere la struttura del codice, indipendentemente dal fatto che si stia lavorando con il codice creato da altri sviluppatori o rivedere i propri progetti. Usare diagrammi classi per personalizzare, condividere e presentare informazioni sul progetto.
Per iniziare, aggiungere un diagramma di classi che visualizza i tipi da esplorare. È possibile creare più diagrammi classi per progetto per visualizzare visualizzazioni diverse, ovvero un subset di tipi, membri specifici o l'intera struttura del progetto.
È anche possibile personalizzare il modo in cui i diagrammi classi visualizzano informazioni, tra cui raggruppamento, ordinamento e opzioni di visibilità.
Quando i diagrammi sono pronti, è possibile:
- Copiare gli elementi del diagramma nei documenti di Microsoft Office
- Stampare diagrammi classi
- Esportare diagrammi come immagini
Class Designer non tiene traccia dei percorsi dei file di origine. Se si spostano o si rinominano file di origine, Progettazione classi potrebbe perdere traccia dei tipi (in particolare typedef, classi di base o tipi di associazione) e visualizzare un errore simile a Progettazione classi non è in grado di visualizzare questo tipo. Per risolvere il problema, trascinare il file di origine modificato o rilocato nel diagramma classi per riprodurre nuovamente il tipo.
Aggiungere diagrammi di classi ai progetti
Aggiungere un diagramma classi al progetto per iniziare a progettare, modificare e effettuare il refactoring delle classi. È possibile aggiungere più diagrammi per visualizzare parti diverse della codebase.
Installare il componente Progettazione classi
Se il componente Progettazione classi non è installato, seguire questa procedura:
Aprire Visual Studio Installer dal menu Start di Windows, oppure selezionare Strumenti>Ottieni strumenti e funzionalità dalla barra dei menu in Visual Studio.
Visual Studio Installer si apre.
Se Visual Studio è già installato, selezionare Modifica.
Selezionare la scheda Singoli componenti e quindi scorrere verso il basso fino alla categoria Strumenti di codice.
Selezionare Designer di classi e quindi selezionare Modifica.
Il componente Designer di Classi avvia l'installazione.
Al termine dell'installazione, riavviare Visual Studio. Il modello Diagramma classi è ora disponibile nella finestra di dialogo Aggiungi nuovo elemento .
Aggiungere un diagramma classi vuoto a un progetto
In Esplora soluzioni fare clic con il pulsante destro del mouse sul nodo del progetto e quindi scegliere Aggiungi>Nuovo elemento. In alternativa, premere Ctrl+Shift+A. Se viene visualizzata una piccola finestra con solo l'opzione per aggiungere un file di codice, scegliere il pulsante Mostra tutti i modelli.
Verrà visualizzata la finestra di dialogo Aggiungi nuovo elemento .
Espandi Generalee quindi seleziona Diagramma delle classi dalla lista dei modelli. Per i progetti Visual C++, cercare nella categoria Utilità per trovare il modello Diagramma delle Classi.
Se non viene visualizzato il modello Diagramma classi , installare prima il componente Progettazione classi .
Il diagramma delle classi viene aperto in Progettazione Classi e appare come un file con estensione .cd in Esplora Soluzioni . È possibile trascinare forme e linee nel diagramma da Casella degli strumentioppure trascinare un nodo di progetto da Esplora soluzioni per aggiungere le classi in tale progetto.
Per aggiungere più diagrammi classi, ripetere i passaggi di questa procedura.
Visualizzare il contenuto di un progetto completo
Per creare un diagramma classi che mostra tutti i tipi in un progetto:
- Aprire un diagramma classi vuoto.
- Trascinare il nodo del progetto da Esplora soluzioni nell'area diagramma classi.
Viene creato un diagramma classi popolato automaticamente con tutti i tipi del progetto.
Personalizzare i diagrammi delle classi
Personalizza il modo in cui i diagrammi delle classi visualizzano le informazioni per concentrarti sugli aspetti più importanti per il tuo compito. È possibile modificare l'intero diagramma o i singoli tipi.
Le opzioni di personalizzazione includono:
- Regolare il livello di zoom
- Modificare la modalità di raggruppamento e ordinamento dei membri
- Nascondere o mostrare relazioni
- Spostare i tipi in qualsiasi punto del diagramma
La personalizzazione dell'aspetto del diagramma non modifica il codice sottostante.
Le sezioni che contengono membri di tipo, ad esempio la sezione Proprietà di una classe, sono denominate raggruppamenti. È possibile nascondere o mostrare singoli raggruppamenti e membri di tipo.
Ingrandire o ridurre
Apri e seleziona un file di diagramma di classe in Progettazione delle classi .
Sulla barra degli strumenti di Progettazione classi selezionare Zoom avanti o Zoom indietro per modificare il livello di zoom.
In alternativa, usare l'elenco a discesa Zoom o digitare un valore di zoom (da 10% a 400%).
La modifica del livello di zoom non influisce sulla scala dei diagrammi stampati.
Personalizzare il raggruppamento e l'ordinamento dei membri del tipo
Apri e seleziona un file di diagramma di classe in Progettazione delle classi .
Fare clic con il pulsante destro del mouse su un'area vuota nell'area di progettazione e scegliere Membri del gruppo.
Selezionare una delle opzioni disponibili:
Group by Kind separa singoli membri di tipo in un elenco raggruppato di proprietà, metodi, eventi e campi. I singoli gruppi dipendono dalla definizione delle entità: ad esempio, una classe non visualizza alcun gruppo di eventi se non sono ancora stati definiti eventi per tale classe.
Group by Access separa i singoli membri del tipo in un elenco organizzato in base ai modificatori di accesso del membro. Ad esempio, Pubblico e Privato.
ordina alfabeticamente visualizza gli elementi che costituiscono un'entità come un unico elenco alfabetico. L'elenco viene ordinato in ordine crescente.
Nascondere raggruppamenti in un tipo
Apri e seleziona un file di diagramma delle classi in Progettazione Classi .
Fare clic con il pulsante destro del mouse sulla categoria di membri nel tipo da personalizzare, ad esempio selezionare il nodo Metodi in una classe.
Selezionare Nascondi raggruppamento.
Il compartimento selezionato scompare dal contenitore di tipi.
Nascondere singoli membri di un tipo
Apri e seleziona un file di diagramma di classe in Progettazione delle classi .
Fare clic con il pulsante destro del mouse sul membro nel tipo che si desidera nascondere.
Selezionare Nascondi.
Il membro selezionato scompare dal contenitore di tipi.
Mostra raggruppamenti e membri nascosti in un tipo
Apri e seleziona un file di diagramma di classe in Progettazione delle classi .
Fare clic con il pulsante destro del mouse sul nome del tipo con il compartimento nascosto.
Selezionare Mostra tutti i membri.
Tutti i raggruppamenti nascosti e i membri vengono visualizzati nel contenitore di tipi.
Nascondere le relazioni
Apri e seleziona un file di diagramma di classe in Progettazione delle classi .
Fare clic con il pulsante destro del mouse sull'associazione o sulla riga di ereditarietà che si desidera nascondere.
Selezionare Nascondi per le linee di associazione oppure selezionare Nascondi linea di ereditarietà per le linee di ereditarietà.
La linea di relazione selezionata scompare dal diagramma.
Mostra relazioni nascoste
Apri e seleziona un file di diagramma di classe in Progettazione delle classi .
Cliccare con il tasto destro sulla tipologia con l'associazione nascosta o l'ereditarietà.
Selezionare Mostra tutti i membri per le righe di associazione oppure selezionare Mostra classe base o Mostra classi derivate per le righe di ereditarietà.
Le linee di relazione nascoste vengono nuovamente visualizzate nel diagramma.
Rimuovere una forma da un diagramma delle classi
È possibile rimuovere una forma di tipo dal diagramma classi senza influire sul codice sottostante del tipo. La rimozione di forme di tipo da un diagramma classi influisce solo su tale diagramma: il codice sottostante che definisce il tipo e altri diagrammi che visualizzano il tipo non sono interessati.
Nel diagramma classi selezionare la forma del tipo da rimuovere dal diagramma.
Nel menu Modifica scegliere Rimuovi dal diagramma.
La forma del tipo e le linee di associazione o ereditarietà connesse alla forma non vengono più visualizzate nel diagramma.
Eliminare una forma di tipo e il relativo codice sottostante
Fare clic con il pulsante destro del mouse sulla forma dell'area di progettazione.
Seleziona Elimina Codice dal menu contestuale.
La forma viene rimossa dal diagramma e il relativo codice sottostante viene eliminato dal progetto.
Copiare gli elementi del diagramma classi in un documento di Microsoft Office
Puoi copiare forme da un diagramma di classe .NET (file .cd) verso altri documenti. Si otterrà una copia della forma o del relativo codice sottostante, in base al tipo di documento in cui viene incollato. Per copiare le forme dai diagrammi classi UML in un progetto di modellazione, vedere Esportare diagrammi come immagini.
Copiare un singolo elemento
Fare clic con il pulsante destro del mouse sulla forma e scegliere Copia immagine.
Copiare diversi elementi
Selezionare le forme nel diagramma da copiare.
Fare clic con il pulsante destro del mouse sulla selezione e scegliere Copia immagine.
Copiare tutti gli elementi in un diagramma classi
Fare clic con il pulsante destro del mouse sull'area del diagramma e scegliere Seleziona tuttooppure premere CTRL+A.
Nel menu Modifica selezionare Copia immagine.
È anche possibile scegliere Copia invece di Copia immagine. Copia copia l'immagine come bitmap normale. Copia Immagine copia l'immagine come immagine vettoriale, il che migliora l'uso nella maggior parte delle applicazioni Office.
Esportare diagrammi di classi come immagini
Per esportare un diagramma classi creato dal codice in un progetto, salvare il diagramma come immagine. Se invece si vogliono esportare diagrammi classi UML, vedere Esportare diagrammi come immagini.
Esportare un diagramma
Apri il diagramma delle classi (file .cd).
Dal menu diagramma classi o dal menu di scelta rapida dell'area diagramma scegliere Esporta diagramma come immagine.
Selezionare un diagramma.
Selezionare il formato desiderato.
Scegliere Esporta per completare l'esportazione.
Per aggiornare automaticamente le immagini esportate collegate da altri documenti, esportare di nuovo il diagramma in Visual Studio.
Stampare diagrammi delle classi
È possibile stampare un diagramma classi usando la funzionalità di stampa di Visual Studio.
Stampare un diagramma delle classi
Aprire il diagramma delle classi.
Selezionare File>Stampa.
Viene stampato l'intero diagramma delle classi. Potrebbe essere necessario modificare le impostazioni nella finestra di dialogo Imposta pagina per stampare in base alle dimensioni appropriate.
Aggiungere commenti ai diagrammi classi
È possibile usare forme di commento per annotare i diagrammi classi. Una forma di commento ha una proprietà, Testo, in cui è possibile digitare testo. Le forme di commento esistono solo sulla superficie del diagramma e non nel codice.
Un commento si trova nella visualizzazione diagramma classi in Progettazione classi . Se si apre un diagramma di seconda classe nello stesso progetto, i commenti creati nella prima visualizzazione non sono visibili. Se si elimina un diagramma, vengono eliminati anche tutti i commenti contenuti.
È possibile ridimensionare una forma di commento, ma non è possibile modificare altri aspetti dell'aspetto, ad esempio il colore di sfondo, il tipo di carattere o le dimensioni del carattere.
Aggiungi un commento
Trascinare un commento dalla casella degli strumenti di Progettazione classi sul diagramma delle classi.
Selezionare la nuova forma di commento nel diagramma e digitare il testo desiderato.
Il commento viene visualizzato sulla superficie del diagramma.
Scorciatoie da tastiera e mouse
Usare i tasti di scelta rapida e le azioni del mouse (o un altro dispositivo di puntamento) per spostarsi in modo efficiente in Class Designer e nella finestra Class Details. Questi tasti di scelta rapida consentono di lavorare più velocemente senza passare ai comandi di menu.
Usare il mouse nel Designer di Classi
Le azioni del dispositivo di puntamento seguenti sono supportate nei diagrammi classi:
| Combinazione di mouse | Contesto | Descrizione |
|---|---|---|
| Fare doppio clic | Elementi di forma | Apre l'editor di codice. |
| Fare doppio clic | Connettore Lollipop | Espandi/comprimi lollipop. |
| Fare doppio clic | Etichetta del connettore Lollipop | Richiama il comando Mostra Interfaccia. |
| Rotellina del mouse | Diagramma delle classi | Scorrere verticalmente. |
| Maiusc + Rotellina del mouse | Diagramma delle classi | Scorrere orizzontalmente. |
| CTRL + rotellina del mouse | Diagramma delle classi | Zoom. |
| CTRL+MAIUSC + clic | Diagramma delle classi | Zoom. |
Usare il mouse nella finestra Dettagli classe
Usando un mouse o un altro dispositivo di puntamento, è possibile modificare l'aspetto della finestra Dettagli classe e i dati visualizzati nei modi seguenti:
Facendo clic su una cella modificabile è possibile modificare il contenuto di tale cella. Le modifiche vengono riflesse in tutte le posizioni in cui vengono archiviati o visualizzati i dati, incluse nella finestra Proprietà e nel codice sorgente.
Se si fa clic su una cella di una riga, la finestra proprietà visualizza le proprietà dell'elemento rappresentato da tale riga.
Per modificare la larghezza di una colonna, trascinare il limite sul lato destro dell'intestazione di colonna fino a raggiungere la larghezza desiderata.
È possibile espandere o comprimere i nodi di compartimento o proprietà facendo clic sui simboli di freccia a sinistra della riga dell'elenco.
La finestra Dettagli Classe offre diversi pulsanti per creare nuovi membri nella classe corrente e per spostarsi tra gli scomparti dei membri nella griglia della finestra Dettagli Classe.
Usare la tastiera nel Designer di Classi
Le azioni della tastiera seguenti sono supportate nei diagrammi classi:
| Chiave | Contesto | Descrizione |
|---|---|---|
| tasti freccia | Forme interne dei caratteri | Navigazione ad albero nei contenuti delle forme (è supportato l'adattamento dei contenuti attorno alle forme). I tasti sinistro e destro espandono/comprimeno l'elemento corrente se è espandibile e passano all'elemento padre, se non lo è (vedi lo spostamento nella visualizzazione albero per un comportamento dettagliato). |
| tasti freccia | Forme di alto livello | Spostamento di forme nel diagramma. |
| maiusc+tasti di direzione | Forme interne dei caratteri | Creazione di una selezione continua costituita da elementi di forma, ad esempio membri, tipi annidati o raggruppamenti. Questi tasti di scelta rapida non supportano la ricircolazione. |
| Pagina Iniziale | Forme interne dei caratteri | Passare al titolo della forma di primo livello. |
| Pagina Iniziale | Forme di alto livello | Passare alla prima figura del diagramma. |
| Fine | Forme interne dei caratteri | Passare all'ultimo elemento visibile all'interno della forma. |
| Fine | Forme di alto livello | Passare all'ultima figura del diagramma. |
| Shift+Home | Forma interna del tipo | Seleziona gli elementi all'interno della forma a partire dall'elemento corrente e termina con l'elemento più in alto nella stessa forma. |
| Maiusc+Fine | Forma interna del tipo | Uguale a Shift+Home ma in direzione dall'alto verso il basso. |
| Immettere | Tutti i contesti | Richiama l'azione predefinita sulla forma, disponibile anche tramite doppio clic. Nella maggior parte dei casi si tratta di View Code, ma alcuni elementi lo definiscono in modo diverso (lecca-lecca, intestazioni di compartimenti, etichette lecca-lecca). |
| + e - | Tutti i contesti | Se l'elemento attualmente focalizzato è espandibile, questi tasti espandono o comprimono l'elemento. |
| > | Tutti i contesti | Negli elementi con elementi figlio, questo espande l'elemento se è compresso e passa al primo elemento figlio. |
| < | Tutti i contesti | Passa all'elemento padre. |
| alt+MAIUSC+L | All'interno delle forme tipografiche + sulle forme tipografiche. | Passa al lollipop della forma selezionata, se presente. |
| + MAIUSC+B | All'interno delle forme tipografiche + sulle forme tipografiche. | Se l'elenco dei tipi di base viene visualizzato nella forma del tipo e contiene più di un elemento, viene attivato o disattivato lo stato di espansione dell'elenco (compressione/espansione). |
| Eliminare | Sul tipo e le forme dei commenti | Richiama il comando Rimuovi dal diagramma. |
| Eliminare | Su tutto il resto. | Richiama comando Elimina dal codice (membri, parametri, associazioni, ereditarietà, etichette lollipop). |
| CTRL+Elimina | Tutti i contesti | Richiama il comando Elimina dal codice sulla selezione. |
| Scheda | Tutti i contesti | Passa all'elemento figlio successivo all'interno dello stesso padre (supporta il wrapping). |
| Shift+Tab | Tutti i contesti | Passa al figlio precedente all'interno dello stesso padre (supporta il wrapping). |
| barra spaziatrice | Tutti i contesti | Attiva/disattiva la selezione sull'elemento corrente. |
Usare la tastiera nella finestra Dettagli classe
Le associazioni di tasti seguenti simulano l'esperienza di digitazione del codice. Usare queste chiavi per spostarsi nella finestra Dettagli classe :
| Chiave | Risultato |
|---|---|
| , (virgola) | Se il cursore si trova in una riga di parametro, digitare una virgola sposta il cursore nel campo Nome del parametro successivo. Se il cursore si trova nell'ultima riga di parametro di un metodo, sposta il cursore nel campo <aggiungi parametro>, che è possibile usare per creare un nuovo parametro. Se il cursore si trova altrove nella finestra Dettagli Classe, digitando una virgola, questa viene letteralmente aggiunta nel campo corrente. |
| ; (punto e virgola) o ) (parentesi di chiusura) | Spostare il cursore nel campo Nome della riga del membro successivo nella griglia Dettagli Classe. |
| Scheda | Sposta il cursore sul campo successivo, spostandosi prima da sinistra a destra e quindi dall'alto verso il basso. Se il cursore viene spostato da un campo in cui è stato digitato testo, Dettagli classe elabora il testo e lo archivia se non genera un errore. Se il cursore si trova su un campo vuoto, ad esempio <, aggiungere il parametro>e la tabulazione lo sposta nel primo campo della riga successiva. |
| barra spaziatrice | Sposta il cursore sul campo successivo, spostandosi prima da sinistra a destra e quindi dall'alto verso il basso. Se il cursore si trova in un campo vuoto, ad esempio <aggiungere il parametro>, passa al primo campo della riga successiva. Si noti che lo spazio <> digitato immediatamente dopo una virgola è ignorato. Se il cursore si trova nel campo Riepilogo, digitando uno spazio viene aggiunto uno spazio. Se il cursore si trova nella colonna Nascondi di una determinata riga, digitando uno spazio viene attivato o disattivato il valore della casella di controllo Nascondi. |
| CTRL+Tab | Passare a un'altra finestra del documento. Ad esempio, passare dalla finestra Dettagli della classe a un file di codice aperto. |
| Esc | Se hai iniziato a digitare testo in un campo, premendo ESC funge da tasto di annullamento, ripristinando il contenuto del campo con il relativo valore precedente. Se la finestra Dettagli classe ha il fuoco generale, ma nessuna cella specifica è selezionata, premendo ESC il fuoco viene spostato dalla finestra Dettagli classe. |
| freccia su e freccia giù | Questi tasti spostano il cursore da riga a riga verticalmente nella griglia della finestra Dettagli classe. |
| freccia sinistra | Se il cursore si trova nella colonna Nome, premendo la freccia sinistra si comprime il nodo corrente nella gerarchia (se è aperto). |
| freccia destra | Se il cursore si trova nella colonna Nome, premere la freccia destra per espandere il nodo corrente nella gerarchia (se è compresso). |
Per un elenco completo dei tasti di scelta rapida, vedere tasti di scelta rapida in Visual Studio.