Dialogo È possibile utilizzare i diagrammi livello per progettare l'architettura dell'applicazione e verificare se il codice è allineato al progetto. È possibile tenere traccia del lavoro associato ai modelli collegando gli elementi di lavoro di Team Foundation Server agli elementi del modello. In tal modo si fornisce la tracciabilità tra i modelli, l'IDE e il codice, indipendentemente dal fatto che si sta progettando una nuova soluzione o aggiornando una soluzione esistente. Si inizia esaminando l'architettura di un'applicazione revisionando il diagramma livello. L'architetto del team ha suggerito di eseguire il refactoring di parte dell'applicazione per allinearla alla progettazione nel diagramma livello. Questa attività è nel backlog ed è collegata al diagramma livello. Azione In Team Explorer, sotto Lavoro personale, fare doppio clic sull'elemento di lavoro dell'attività per aprirlo. Nell'elemento di lavoro, fare clic su Altri collegamenti. Sotto Collegamento modello, fare doppio clic sul collegamento del modello per aprire Petshop.layerdiagram nel progetto PetShopModels. Dialogo Nel diagramma livello vengono visualizzate le dipendenze consentite tra gli spazi dei nomi che sono mappate ai livelli. I diagramma livello sono molto simili a un disegno su una lavagna bianca, con forme e relazioni tra le forme. Con i diagrammi livello nella soluzione non si descrive solo l'architettura voluta. Includendo questo passaggio nel processo di archiviazione e compilazione, è possibile individuare con più facilità le modifiche del codice che sono in conflitto con la progettazione. Azione Nel menu Architettura, scegliere Finestre, Esplora livello. Nel diagramma livello, fare clic sul livello Business. Esaminare gli elementi in Esplora livello. Nel diagramma livello, fare clic con il pulsante destro del mouse sul livello Business. Scegliere Convalida architettura (l'operazione potrebbe impiegare diverso tempo) Nella finestra Elenco errori, esaminare gli errori (ciascuno contrassegnato con una X rossa). Fare doppio clic sul primo errore per vedere il codice che lo ha prodotto. Dialogo Sono state rilevate alcune dipendenze nel codice che sono in conflitto con la progettazione. Il metodo Insert nella classe Order rende non valide le chiamate ai metodi di due altre classi. Nel diagramma livello, il metodo Insert è mappato al livello Business che non deve comunicare direttamente con i livelli per le altre due classi. Il livello Business deve comunicare con il livello PaymentGateway. La convalida del livello ha evidenziato gli errori del codice, quindi una volta risolti i conflitti, si riesegue la convalida per ricevere conferma nel diagramma che è stata eseguita l'operazione corretta. Azione Nel diagramma livello, fare clic sul livello PaymentGateway. Nella finestra Esplora livello, osservare lo spazio dei nomi PaymentGatway. In Esplora soluzioni, espandere il progetto PaymentGateway, il tipo PaymentProcessor e rivedere i metodi Member. Aprire il file PaymentProcessor.cs per vedere le definizioni dei metodi Member. Dialogo Esaminando il codice mappato al livello PaymentGateway, è possibile delegare parte della funzionalità del metodo Insert al metodo ProcessPayment. Creare i diagrammi sequenza per avere un confronto visivo delle strutture ad alto livello e delle sequenze delle chiamate per questi due metodi. Azione Fare doppio clic sul primo errore per visualizzare il codice. Esaminare la definizione del metodo Insert. Fare clic con il pulsante destro del mouse su un punto qualsiasi all'interno all'interno della definizione del metodo Insert. Scegliere Genera diagramma sequenza. Non modificare le opzioni proposte. Fare clic su OK. Nel diagramma sequenza viene mostrato che il metodo Insert chiama i metodi per la classe CreditCardService e la classe OnlinePaymentService. Nel file PaymentProcessor.cs, fare clic con il pulsante destro del mouse all'interno della definizione del metodo ProcessPayment. Scegliere Genera diagramma sequenza. Non modificare le opzioni proposte. Fare clic su OK. Esaminare i due diagrammi sequenza confrontando le classi indirizzate o meno dal metodo Insert e dal metodo ProcessPayment. Mostrare le similitudini e le differenze. Dialogo Questi due metodi sono molto simili con poche differenze. Eseguire il refactoring del metodo Insert per chiamare ProcessPayment. Verrà eseguita nuovamente la convalida per accertarsi che le modifiche abbiano risolto i conflitti di dipendenza. Azione Nella definizione del metodo Insert, sostituire il codice tra le seguenti istruzioni: if (order.CreditCard.CardType == "CreditCardProviderA" || order.CreditCard.CardType == "CreditCardProviderB") and: CalculatePaymentInfo(order); con il seguente codice: PaymentGateway.PaymentProcessor processor = new PaymentGateway.PaymentProcessor(); if (!processor.ProcessPayment(order)) { return OrderStatus.Failed; } Convalidare l'architettura. Dialogo In questo video si è dimostrato come i diagrammi livello contribuiscono a descrivere l'architettura desiderata di un'applicazione e come si utilizza la convalida dei livelli per vedere dove il codice è in conflitto con la progettazione. È stato inoltre descritto come si utilizzano i diagrammi sequenza per vedere il flusso dei metodi tra le diverse classi. Per ulteriori informazioni sull'utilizzo dei modelli UML per descrivere l'architettura, vedere il video correlato.
di {1} elementi di lavoro pubblicati. Errore durante la pubblicazione dei collegamenti (aggiunta di {2} e rimozione di {3}). ...
di {1} elementi di lavoro pubblicati. Esaminare e risolvere i problemi seguenti per pubblicare gli elementi di lavoro rimanenti. ...
DiagnosticsHub.CollectorBridge.dll non installato correttamente sul dispositivo/computer remoto '{0}'. Assicurarsi che la ...
DiagnosticsHubMsg.dll non installato correttamente sul dispositivo/computer remoto '{0}'. Se il problema persiste, reinstallare ...
Dialogo È possibile utilizzare i diagrammi livello per progettare l'architettura dell'applicazione e verificare se il codice ...
Dialogo È possibile utilizzare i diagrammi UML per modellare i requisiti dell'utente e la progettazione dell'applicazione, ...
Dialogo I test di carico e prestazioni sono importanti per comprendere come l'applicazione o il servizio viene utilizzato ...
Dialogo In Visual Studio, è possibile ottenere i dati diagnostici sulle applicazioni già distribuite utilizzando lo strumento ...
Diapositiva {0}: impossibile modificare la diapositiva secondaria '{1}' definita per la proprietà Modifica forma. Definire ...