Procedura: convalidare codice C e C++ in base ai diagrammi livelli
Questo Feature Pack di Visual Studio 2010 consente di applicare vincoli architetturali al codice C e C++ in Visual Studio 2010 Ultimate di volta in volta modificato. Per effettuare questa attività, eseguire regolarmente la convalida dei livelli per confrontare le dipendenze nel codice con le dipendenze in un diagramma livello. Un diagramma livello descrive l'architettura del sistema e organizza gli spazi dei nomi, i progetti e gli altri elementi in gruppi logici e astratti o livelli. Questi livelli descrivono i componenti principali del sistema o le attività che tali elementi eseguono. Per creare un diagramma livello per il codice C o C++, attenersi alla medesima procedura seguita per il codice .NET. Per ulteriori informazioni, vedere Procedura: creare diagrammi livello da elementi e Feature Pack di Visual Studio.
Nota
Per utilizzare questa funzionalità, è necessario installare un Feature Pack di Visual Studio 2010.
Per i file binari, la convalida dei livelli viene eseguita al solo livello binario. Anche se è possibile collegare altri tipi di elementi a un diagramma livello, la convalida dei livelli analizza solo le dipendenze a livello binario.
La convalida del livello può agevolare l'utente nell'esecuzione delle attività seguenti:
Vedere le differenze tra il codice esistente e la progettazione desiderata.
Trovare il codice non organizzato come previsto o il codice che dispone di dipendenze indesiderate.
Trovare le dipendenze sulle quali potrebbero influire le modifiche proposte.
Ad esempio, è possibile modificare il diagramma livello per mostrare le potenziali modifiche all'architettura e quindi convalidare il codice per vedere le dipendenze interessate.
Effettuare il refactoring o la migrazione del codice in una progettazione diversa.
Trovare codice o dipendenze che richiedono ulteriori azioni quando si sposta il codice in un'architettura diversa.
In questo argomento vengono descritti i requisiti che devono essere soddisfatti per eseguire la convalida dei livelli nel codice C o C++.
Requisiti
Assicurarsi che Visual C# sia installato con Visual Studio.
Creare un progetto di modello con un diagramma livello
Per convalidare le dipendenze tra file binari, aggiungere i file binari al progetto di modello.
Per convalidare i progetti C e C++ in Team Foundation Build, vedere Requisiti per Team Foundation Build.
Dopo avere soddisfatto questi requisiti, è possibile attenersi alla medesima procedura seguita per il codice .NET. Per tale procedura, vedere Procedura: convalidare il codice .NET in base ai diagrammi livello. Per i problemi relativi ai progetti di modello e ai diagrammi livello creati dal codice C o C++, vedere Risoluzione dei problemi.
Creare un progetto di modello con un diagramma livello
La soluzione di Visual Studio deve includere un progetto di modello contenente un diagramma livello.
Per creare un progetto di modello
In Esplora soluzioni fare clic con il pulsante destro del mouse sul nodo della soluzione di primo livello, scegliere Aggiungi, quindi Nuovo progetto.
Nella finestra di dialogo Aggiungi nuovo progetto, in Modelli installati fare clic su Progetti di modello, quindi su Progetto di modello.
Rinominare il progetto, quindi scegliere OK.
Tramite Visual Studio verrà aggiunto un nuovo progetto di modello alla soluzione.
Assicurarsi di salvare il progetto di modello.
Per creare un diagramma livello
Scegliere Nuovo diagramma dal menu Architettura, quindi nella finestra di dialogo Aggiungi nuovo diagramma selezionare Diagramma livello.
Rinominare il diagramma, selezionare il progetto di modello, quindi scegliere OK.
Tramite Visual Studio viene aggiunto un diagramma livello vuoto al progetto di modello, quindi viene visualizzato il diagramma.
Da Esplora soluzioni trascinare almeno un progetto C o C++ nella superficie del diagramma livello.
- oppure -
Da Esplora architettura trascinare almeno un file binario nella superficie del diagramma livello.
Eseguendo uno di questi passaggi verranno inoltre aggiunti automaticamente al progetto di modello i seguenti elementi:
Riferimenti al progetto di modello.
Un elemento <Import> al file del progetto di modello (con estensione modelproj) che importa un file targets personalizzato e abilita la convalida dei livelli per il codice C o C++.
Definire altri livelli, collegare elementi a essi e descrivere le dipendenze desiderate tra tali elementi.
Per ulteriori informazioni, vedere Procedura: creare diagrammi livello da elementi e Diagrammi livello: linee guida.
Assicurarsi di salvare il progetto di modello.
Importante
Se si salva solo il diagramma livello ma non il progetto di modello e quindi si chiude la soluzione, sarà necessario aggiungere i riferimenti al progetto C o C++ e importare manualmente il file targets personalizzato per il progetto di modello. Per ulteriori informazioni, vedere Risoluzione dei problemi.
![]() |
---|
Quando si crea un diagramma livello dal codice C o C++ in Visual Studio 2010 Ultimate in Windows XP o Windows 2003, viene utilizzato un percorso assoluto per creare la voce nel file del progetto di modello (con estensione modelproj) per importare il file Microsoft.VisualStudio.Progression.NativeProvider.targets personalizzato. Questo meccanismo potrebbe causare problemi quando si tenta di aprire la soluzione in Windows 7, Windows Vista o Windows Server 2008. Se si esegue Visual Studio 2010 Ultimate in Windows XP o Windows 2003, non sarà possibile aprire diagrammi livello creati con Visual Studio 2010 Ultimate in Windows 7, Windows Vista o Windows Server 2008. Per risolvere questo problema, vedere Risoluzione dei problemi. |
Aggiunta di file binari al progetto di modello
Se si desidera convalidare le dipendenze tra file binari, è necessario aggiungere manualmente i file binari da convalidare al progetto di modello. Tali file non vengono aggiunti automaticamente quando li si trascina nel diagramma livello.
Per aggiungere file binari al progetto di modello
In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto di modello, quindi scegliere Aggiungi elemento esistente.
Nella finestra di dialogo Aggiungi elemento esistente individuare i file binari, selezionarli, quindi scegliere OK.
I file binari verranno visualizzati nel progetto di modello.
In Esplora soluzioni fare clic su un file binario aggiunto e premere F4 per aprire la finestra Proprietà.
Per ogni file binario, impostare la proprietà Operazione di compilazione su Convalida.
Requisiti per Team Foundation Build
Per convalidare i progetti C e C++ nel server di Team Foundation Build, è necessario attenersi alla seguente procedura:
Per compilare i progetti, assicurarsi che i seguenti elementi siano installati nel server:
Uno dei seguenti: Visual C++ 2010 Express, Visual Studio 2010 Professional, Visual Studio 2010 Premium o Visual Studio 2010 Ultimate
Suggerimento
Se Visual Studio 2010 Ultimate è installato nel server, sarà possibile installare il Feature Pack nel server anziché eseguire i passaggi 2 e 3. In caso contrario, se la cartella …\<NomeFeaturePackVisualStudio>\<NumeroVersioneFeaturePackVisualStudio> non esiste nel server, potrebbe essere necessario crearla. A meno che non si sia installato il Feature Pack in un percorso differente, %LocalAppData% corrisponde in genere a NomeUnità:\Users\NomeUtente\AppData\Local. In Windows XP e Windows 2003, utilizzare %AppData% anziché %LocalAppData%.
Se è installato il Feature Pack di visualizzazione e modellazione di Microsoft Visual Studio 2010:
Copiare il file Microsoft.VisualStudio.Progression.NativeProvider.targets dal seguente percorso di installazione del Feature Pack allo stesso percorso nel server:
%LocalAppData%\Microsoft\VisualStudio\10.0\Extensions\Microsoft\<NomeFeaturePackVisualStudio>\1.0
Se è installato Visual Studio 2010 Feature Pack 2:
Copiare il file Microsoft.VisualStudio.Progression.NativeProvider.targets dal seguente percorso di installazione del Feature Pack:
…\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\<NomeFeaturePackVisualStudio>\<NumeroVersioneFeaturePackVisualStudio>
al seguente percorso nel server:
…\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\Microsoft\Modeling\<NomeFeaturePackVisualStudio>\1.0
Copiare il file Microsoft.VisualStudio.Progression.NativeProvider.dll da uno dei seguenti percorsi di installazione del Feature Pack, a seconda della versione del Feature Pack installata:
Feature Pack di visualizzazione e modellazione di Visual Studio 2010: %LocalAppData%\Microsoft\VisualStudio\10.0\Extensions\Microsoft\<NomeFeaturePackVisualStudio>\1.0
Visual Studio 2010 Feature Pack 2: …\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\<NomeFeaturePackVisualStudio>\<NumeroVersioneFeaturePackVisualStudio>
al seguente percorso nel server:
…\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\Providers
Risoluzione dei problemi
Se si salva solo il diagramma livello ma non il progetto di modello e quindi si chiude la soluzione, sarà necessario aggiungere i riferimenti al progetto C o C++ e importare manualmente il file targets personalizzato per il progetto di modello mediante la seguente procedura:
Per |
Si seguano le seguenti istruzioni |
---|---|
Aggiungere i riferimenti al progetto C o C++ |
|
Importare il file targets personalizzato |
|
Quando si crea un diagramma livello dal codice C o C++ in Visual Studio 2010 Ultimate in Windows XP o Windows 2003, viene utilizzato un percorso assoluto per creare la voce nel file del progetto di modello (con estensione modelproj) per importare il file Microsoft.VisualStudio.Progression.NativeProvider.targets personalizzato. Questo meccanismo potrebbe causare problemi quando si tenta di aprire la soluzione in Windows 7, Windows Vista o Windows Server 2008. Se si esegue Visual Studio 2010 Ultimate in Windows XP o Windows 2003, non sarà possibile aprire diagrammi livello creati con Visual Studio 2010 Ultimate in Windows 7, Windows Vista o Windows Server 2008.
Per risolvere questo problema, utilizzare una delle seguenti soluzioni alternative:
Copiare il file Microsoft.VisualStudio.Progression.NativeProvider.targets dal percorso seguente alla cartella che contiene il progetto di modello:
Se è installato il Feature Pack di visualizzazione e modellazione di Microsoft Visual Studio 2010:
%LocalAppData%\Microsoft\VisualStudio\10.0\Extensions\Microsoft\<NomeFeaturePackVisualStudio>\1.0
Suggerimento
A meno che non si sia installato il Feature Pack in un percorso differente, %LocalAppData% corrisponde in genere a NomeUnità:\Users\NomeUtente\AppData\Local. In Windows XP e Windows 2003, utilizzare %AppData% anziché %LocalAppData%.
Se è installato Visual Studio 2010 Feature Pack 2:
…\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\<NomeFeaturePackVisualStudio>\<NumeroVersioneFeaturePackVisualStudio>
Nel file modelproj, aggiornare l'elemento <Import> per il file targets sostituendo il percorso assoluto con un percorso relativo per il file targets. Di seguito è riportato un esempio:
<Import Project="Microsoft.VisualStudio.Progression.NativeProvider.targets" />
Importante
Se si utilizza il controllo della versione, è necessario archiviare il file targets nel controllo della versione.
- oppure -
Creare una nuova variabile di ambiente che rappresenta il percorso di installazione del file Microsoft.VisualStudio.Progression.NativeProvider.dll.
Utilizzare questa variabile per importare il file targets.
Ad esempio, è possibile creare una variabile di ambiente quale "NativeProviderTargetPath" che punta al percorso del file targets. Quindi, sarà possibile aggiornare l'elemento <Import> come segue:
<Import Project="$(NativeProviderTargetPath)\Microsoft.VisualStudio.Progression.NativeProvider.targets" />
Importante
Assicurarsi di impostare correttamente la variabile di ambiente nei diversi sistemi operativi.
Vedere anche
Attività
Procedura: creare diagrammi livello da elementi
Procedura: convalidare il codice .NET in base ai diagrammi livello
Concetti
Diagrammi livello: linee guida
Cronologia delle modifiche
Data |
Cronologia |
Motivo |
---|---|---|
Dicembre 2010 |
Contenuto aggiornato per Visual Studio 2010 Feature Pack 2. |
Miglioramento delle informazioni. |