Vizualizace kódu generováním sekvenčních diagramů
V Visual Studio Ultimate, generování sekvenční diagram pomoci vizualizovat a pochopit, jak kód implementuje určité metody.Sekvenční diagram popisuje interakci mezi objekty jako řadu životnosti a zprávy.Životnosti představují instancí objektů a zprávy představují způsob volání mezi těmito objekty.Můžete generovat sekvenční diagramy z Visual C# .NET or Visual Basic .NET kód.
[!POZNÁMKA]
Generované sekvenční diagram zobrazuje prvky podobné těm v sekvenčním diagramu UML.Sekvenční diagram, který je generován z kódu existuje nezávisle na modelu UML a mohou být přidány do libovolné.NET projekt.Naopak sekvenčního diagramu UML, který je nakreslena rukou je vždy součástí modelu, ve kterém jste jej vytvořili.Další informace naleznete v tématu Sekvenční diagramy UML: odkaz.
V tomto tématu
Generování sekvenční Diagram ze zdrojového kódu
Prohlížení kódu na sekvenční diagramy
Úpravy navrhnout změny návrhu diagramu
Navigace z diagramu
Propojení prvků interakce pracovní položky
Vztahy k jiným diagramy
Poradce při potížích sekvenční diagramy
Generování sekvenční Diagram ze zdrojového kódu
Sekvenční diagram generovat kód
V aplikaci Visual Studio otevřete soubor kód, který obsahuje definice metody.
Otevření místní nabídky kdekoli v definice metody a pak zvolte Sekvenční Diagram generovat.
V Sekvenční Diagram generovat v dialogovém okně pole maximální hloubku volání zadejte maximální úroveň volání, které chcete zobrazit.
Pokud chcete zobrazit pouze první úroveň volání, zadejte hloubku volání maximální úroveň 1.
[!POZNÁMKA]
Sekvenční diagram se zobrazí druhá úroveň volání jako zprávy, jejichž životnost žádné cílové nazvaných zprávy ztraceny.Po vytvoření diagramu můžete rozšířit určité zprávy ztraceny.Další informace o ztrátě zpráv viz Sekvenční diagramy UML: odkaz.
Pod Zahrnout volá v, zvolte obor z následující tabulky:
Zobrazit
Zvolte
Volání položky v bezprostřední projektu
Aktuální projekt
Volání položky v roztoku
Řešení (výchozí)
Volání položky uvnitř a vně řešení
Řešení a externí odkazy
Například lze spustit pomocí jednoduchého sekvenční diagram porovnáním pouze ty položky v projektu okamžité volání metody.Generování nové, které zobrazuje položky volání přes řešení můžete rozšířit rozsah diagramu.Pokud chcete zobrazit položky, které nejsou v roztoku volání, je nutné generovat diagram, který obsahuje externí odkazy.
Pod vyloučit volání na, můžete zjednodušit diagramu další vynecháním volání na následující položky:
Vynechat volání
Vybrat
Vlastnosti a události
Vlastnosti a události (výchozí)
Obor názvů System
Obor názvů systému (výchozí)
Určité obory názvů
Ostatní obory názvůa potom zadejte obory názvů v poli pomocí čárkou (,) oddělte.Nepoužívejte zástupný znak (*) znaky jako nejsou podporovány.
Chcete-li zahrnout volání na tyto položky zrušte zaškrtnutí odpovídajících políček.
Po dokončení zvolte OK.
Visual Studio generuje sekvenční diagram a přidá do odpovídajícího projektu.Informace o problémech s generování sekvenční diagramy Řešení potíží sekvenční diagramy.
[!POZNÁMKA]
Deklarace polí se nezobrazují na generované sekvenční diagramy.
Chcete-li identifikovat a komunikovat změny, které chcete provést bez ovlivnění kód, můžete Prozkoumat a změnit generované sekvenční diagram.Můžete například přidat nové životnosti, zprávy, používá interakce a fragmenty.Chcete-li vytvořit a sledovat úkoly pro práci, kterou chcete provést odpovídající kód, můžete vytvořit nebo propojit pracovní položky prvků diagramu.Další informace naleznete v tématu Propojení prvků modelu a pracovních položek.
![]() |
---|
Po vytvoření diagramu nezobrazí změny, které provedete v diagramu v kódu a jakékoli změny kódu se nezobrazí v diagramu.Chcete-li zobrazit tyto změny je nutné generovat nové sekvenčním diagramu.Nové sekvenčním diagramu můžete generovat z stejné metody, kolikrát chcete. |
Prohlížení kódu na sekvenční diagramy
Sekvenční diagram můžete prozkoumat kód a předložit ostatním.Diagram nejužitečnější pro tyto účely dosáhnete Experimentujte s různými obory při generování diagramu.Diagram můžete také změnit po jeho vygenerování.Můžete například odstranit zprávy, které nejsou zajímavé pro předkládání a projednávání návrhu.
Sekvenční diagram můžete provést následující změny.
Akce |
Provedení těchto kroků |
---|---|
Zobrazit další úroveň volání |
Otevřete místní nabídku pro zprávu, která nemá žádné cílové životnost a pak zvolte Rozbalte odchozí. |
Rozbalte zprávu v novém diagramu |
Otevřete místní nabídku pro zprávy a pak zvolte Sekvenční Diagram generovat. Nový diagram se přidá do aktuálního projektu. |
Sbalte skupinu zpráv do jednoho životnost. |
Vyberte životnosti, které chcete seskupit, otevřete místní nabídku pro výběr a pak zvolte Sbalit. Skupiny můžete přejmenovat, ale název budou ztraceny rozbalte ji. Chcete-li rozbalit skupiny jej otevřete místní nabídku a zvolte Rozbalit. |
Odstranění prvků |
Otevření místní nabídky obrazce a vyberte Odstranit. |
Zlepšení rozložení |
Otevřete místní nabídku pro prázdné oblasti diagramu a pak zvolte Změnit uspořádání rozložení. Tento příkaz můžete také vrátit zpět. |
Zvýrazněte vybrané prvky |
Otevřete místní nabídku pro element a pak zvolte Vlastnosti.V Vlastnosti okno, nastavte Barva pole. |
Do diagramu přidat poznámky |
Zvolte Komentář nástroj, klepněte v diagramu a poté zadejte poznámku do komentáře.Použití Odkaz na komentář nástroj připojit komentář k jedné nebo více bodů na provazy nebo fragmenty. |
Úpravy navrhnout změny návrhu diagramu
Přidání a odstranění prvků vám zvážit alternativní návrhy můžete změnit v diagramu.Části diagramu můžete také zkopírovat do vytvořený projekt modelování UML v sekvenčním diagramu UML.Který umožňuje přidružit typy, komponenty a aktéři modelu UML životnosti.
Následující tabulka shrnuje změny, které jsou užitečné pro popis návrhu návrhy.Více podrobností naleznete v tématu Sekvenční diagramy UML: pokyny.
Akce |
Provedení těchto kroků |
---|---|
Zvýrazněte životnosti, zpráv a dalších prvků |
Změna prvku Barva vlastnost. -nebo- Odkaz Komentář prvku:
|
Přesunout životnosti |
Různé oblasti diagramu přetáhněte životnost. Chcete-li přesunout skupinu životnosti, které jste ztratili nebo najít zprávy takto vyberte životnosti před jejich přesunutí:
|
Přesunout a uspořádat zprávy |
Přetáhněte zprávu nahoru nebo dolů v diagramu.
|
Přidat životnost |
Zvolte životnost v panela pak zvolte diagramu. |
Přidat zprávu |
![]()
|
Kopírovat životností a zprávy z jiných diagramech |
Zkopírujte a vložte životnosti. Zprávy mezi nimi se automaticky zkopírují také. ![]()
Při kopírování životnosti v sekvenčním diagramu UML modelování projektu do generované sekvenční diagram mohou objevit pouze záhlaví životnost nebo bude pravděpodobně nutné upravit jejich barvy.Chcete-li tento problém vyřešit, vyberte vložené životnosti a nastavte jejich Barva vlastnosti.
|
Uzavřete zprávy kombinované fragmentu |
Použijte kombinované fragmenty alternativní sekvencí, smyčky a jiné složení zprávy. |
Přesunout zprávu do nového diagramu |
Otevřete místní nabídku pro zprávy a pak zvolte přesunout do diagramu. Vytvořit nový diagram obsahuje zprávy a jeho pomocné zprávy.V diagramu původní zpráva nahrazuje Použití interakce. |
Kopírovat diagram |
Kopírovat diagram v aplikaci Solution Explorer nebo v programu Průzkumník Windows zkopírujte soubory.Existují dva soubory spojené s každou diagramu. Generované sekvenční diagram lze upravit pomocí libovolné instance Visual Studio Ultimatea lze je číst pomocí Visual Studio Ultimate nebo Visual Studio Premium. |
Některé ruční změny, jako je například název změny a dodatky nezvýrazněné |
|
Navigace z diagramu
Akce |
Provedení těchto kroků |
---|---|
Přejděte z životnost nebo zprávy definice třídy nebo metody, resp. |
Otevřete místní nabídku pro životnost nebo zprávy a pak zvolte Přejít na definici. |
Najít třídy nebo metody v architektuře aplikace Explorer |
Otevřete místní nabídku pro životnost nebo zprávy a pak zvolte zobrazení v aplikaci Explorer architektura. Další informace naleznete v tématu Vizualizace závislostí kódu v grafech závislostí. |
Sekvenční Diagram propojení pracovní položky
Chcete-li plán práce provádění změn, můžete propojit prvky jakéhokoli v sekvenčním diagramu pracovní položky Team Foundation Server.Než začnete, přesvědčte se, zda jste připojeni k Team Foundation Server.Další informace naleznete v tématu Propojení prvků modelu a pracovních položek.
Akce |
Provedení těchto kroků |
---|---|
Vytvořit a propojit s provazy, zprávy nebo jiné prvky nové pracovní položky |
|
Propojení provazy, zprávy nebo jiné prvky pracovní položky |
Tento příkaz přidat další pracovní položku odkazy na stejný prvek modelu můžete později opakovat. |
Zobrazení položek propojených práce |
Otevřete místní nabídku pro jeden nebo více prvků a pak zvolte Zobrazit položky práce. |
Odebrat propojení na pracovní položky |
Propojení mezi prvek modelu a zvolené pracovní položky budou odstraněny.Pracovní položky a prvky modelu nejsou odebrány. |
Pokyny pro použití generované sekvenční diagramy
Následující pokyny může být užitečné, když kód s generované sekvenční diagramy jsou průzkumu.
Prozkoumání kód
Generování diagramů závislostí získat celkový obrázek velkých seskupení a závislostí ve velké množství kódu.Potom generovat sekvenční diagramy se zaměřit na jednotlivé části návrhu.Další informace naleznete v tématu Vizualizace závislostí kódu v grafech závislostí.
Interpretace diagramu
Algoritmus, který vytvoří diagramu provádí symbolické provádění kódu.Existují určité situace, které se nevztahuje tato technika.Zejména tyto situace:
Životnosti dvě nebo více se může zobrazit v diagramu, kde provádění kódu pouze zabývá jedna instance.Obecně oddělené cílové životnost je generován pro každou zprávu.
Typ životnost je typ deklarován v kódu programu i v případě, že kód používá vždy podtypu.
Zaměřením na aspektu návrhu
Zvolte jeden aspekt návrhu soustředit.Zaměřit se na různé aspekty různých diagramů generovat a vytvořit kopie souborů diagramu v jakékoli fázi práce.
Chcete-li získat užitečné diagram, který zpřístupňuje jasně aspektu návrhu pravděpodobně experimentovat s filtry názvů a generace.
Odstraníte zprávy, které nejsou důležité hledisko fokus a rozbalte příslušné zprávy zobrazit více podrobností.
Použití Sbalit příkaz k životnosti zničených skupiny, které představují spolupráce skupiny objektů, pokud jsou zajímavé pro stran se zaměřením na jejich vnitřní interakcí.
Aktualizaci návrhu
Můžete spolupracujete na diagramu pomocí řízení verze.Doporučujeme, abyste při úpravách jej tak pouze jedna osoba může upravovat vždy uzamknout diagramu.
Pomocí generované sekvenční diagram lze často určit funkce existující kód, které je obtížné změnit nebo upravit.Například můžete zaznamenat jeden životnost odešle všechny zprávy, ale ostatní stačí odpovědět na zprávy, bez odeslání mnoho své vlastní.Zvažte, zda práci v tomto objektu můžete efektivněji rozdělen mezi ostatní objekty.Každá třída objektu musí mít jeden jasně definovaný úkol.Obecně tato zásada usnadňuje určení, které části programu musí změnit při uživatelů potřebuje změnu, nebo změnit uspořádání částí v různých variant aplikace.
Máte diagram, který se zaměřuje na zvláštní hledisko návrhu, je kopií a upravovat je vytvořit alternativní návrhy na změny.
Prvky generované sekvenční diagram můžete zkopírovat do sekvenčního diagramu UML.Musíte nejprve vytvořit uvnitř projektu modelování UML sekvenční diagram UML.Model, různá zobrazení aktualizovaný návrh a můžete propojit životnosti součásti nebo třídy v modelu.Můžete také rozšířit interakce zahrnout externí objekty actor.
Poradce při potížích sekvenční diagramy
Následující tabulka popisuje problémy, které mohou nastat při generování sekvenční diagramy a jejich možná řešení:
Problém |
Rozlišení |
---|---|
Sekvenční diagram nelze generovat. |
Sekvenční diagram může generovat, pokud System oboru názvů je vyloučena a kód obsahuje volání metody COM, který přijímá ref nebo out parametrů a předá parametr pomocí new klíčové slovo.Chcete-li se tomuto problému vyhnout, změňte kód nebo při generování diagramu zahrnout System oboru názvů. |
Prázdné sekvenční diagram je generována po zobrazení následující zprávy: "Odkaz na objekt není nastaven na instanci objektu." Tento problém nastává při sekvenčním diagramu je generován z explicitní implementace rozhraní metody a diagram zdrojů projektu automaticky přidán.Explicitní implementace předchází název metody s názvem rozhraní a tečky (.). Tento problém nastane například při sekvenčním diagramu projektu automaticky přidávat a sekvenční diagram generovat z následující:
|
Pokud je možné, nezahrnujte název rozhraní a tečky (.). -nebo- V dialogovém okně generace diagram posloupnost zkontrolujte sekvenčním diagramu automaticky přidat do projektu. |
Sekvenční diagram trvá velmi dlouho generovat. -nebo- Sekvenční diagram na otevřením dojde k chybě. V závislosti na konfiguraci počítače sekvenčním diagramu může být příliš velký pro generování rychle a může způsobit Visual Studio spustit z paměti a zhroucení, když zavřete a znovu otevřete v diagramu.Sekvenční diagram s životností 390 a 19,000 zprávy například výsledků v souboru diagramu, který je více než 85 MB. |
Omezit obor diagramu snížením hloubku volání, zbytečné obory, odebrání vlastnosti a události, filtrování a podobně. |