Sdílet prostřednictvím


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

  1. V aplikaci Visual Studio otevřete soubor kód, který obsahuje definice metody.

  2. Otevření místní nabídky kdekoli v definice metody a pak zvolte Sekvenční Diagram generovat.

    Sekvence dialogové okno Generovat

  3. 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.

  4. 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.

  5. 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.

  6. 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.

Důležitá poznámkaDůležité

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:

  1. V panel, zvolte Komentářa v diagramu, klepněte poblíž prvek.

  2. V panel, zvolte Odkaz na komentář, diagramu, zvolte Poznámky a pak zvolte prvek.

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í:

  • Nakreslete obdélník okolo životnosti.

    -nebo-

    Stiskněte a podržte CTRL zvolit každý životnost klíče.

    PoznámkaPoznámka
    Používáte-li Vybrat vše nebo CTRL+a Chcete-li vybrat všechny životnosti a potom přesuňte, ztracené nebo nalezen připojené k životnosti těchto zpráv se nepřesune.Pokud v takovém případě můžete přesunout tyto zprávy samostatně.

Přesunout a uspořádat zprávy

Přetáhněte zprávu nahoru nebo dolů v diagramu.

  1. Vyberte zprávu a pak:

  2. Chcete-li nastavit pozici na zprávu, použijte Šipka nahoru a Šipka dolů klíčů.

  3. Chcete-li změnit pořadí zpráv CTRL+Šipka nahoru a CTRL+Šipka dolů.

Přidat životnost

Zvolte životnost v panela pak zvolte diagramu.

Přidat zprávu

Vytvoření zprávy
  1. V panel, zvolte synchronní nebo asynchronní zprávy.

    Přidat nalezena zpráva nebo zprávy ztraceny, použijte asynchronní zprávy.Nalezené zpráva pochází z neznámé události zdroje a vysílá Neznámý příjemce zprávy ztraceny.

  2. V diagramu zvolte zdroj životnost.

  3. Zvolte cílový životnost.

    -nebo-

    Chcete-li vytvořit nalezena zpráva nebo zpráva ztracena, zvolte na prázdnou oblast na diagramu na začátku, nebo za životnost zdroje.

  4. Zadejte nový název pro 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é.

PoznámkaPoznámka
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

  1. Vyberte jednu nebo více zpráv.

  2. Otevření místní nabídky pro výběr, přejděte na Surround Sa pak zvolte typ 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é

  1. Otevřete místní nabídku pro povrch diagram posloupnost a pak zvolte Vlastnosti.

  2. Nastavit Zobrazit změny ručně vlastnost False.

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

  • Otevřete místní nabídku pro jeden nebo více prvků, zvolte Vytvořit pracovní položkua pak zvolte typ pracovní položku, kterou chcete vytvořit.

    Nové pracovní položku otevře, aby ji dokončit.

Propojení provazy, zprávy nebo jiné prvky pracovní položky

  1. Otevřete místní nabídku pro jeden nebo více prvků a pak zvolte odkaz na položku pracovní.

  2. V odkazů na položky práce dialogové okno Spustit dotaz najít pracovní položka nebo přímo zadat jeho ID.Můžete vybrat libovolný počet pracovních položek.

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

  1. Otevřete místní nabídku pro element a pak zvolte Odebrat pracovní položky.

  2. V Odebrat odkazy na položky práce dialogovém okně pole, zvolte položku odkazy práce, kterou chcete odebrat.

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.

Ee317485.collapse_all(cs-cz,VS.110).gifProzkoumá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í.

Ee317485.collapse_all(cs-cz,VS.110).gifInterpretace 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.

Ee317485.collapse_all(cs-cz,VS.110).gifZaměř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í.

Ee317485.collapse_all(cs-cz,VS.110).gifAktualizaci 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í:

void ILinkedWorkItemExtension.OnWorkItemCreated( ) {}

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ě.

Viz také

Referenční dokumentace

Sekvenční diagramy UML: odkaz

Koncepty

Vizualizace a principy kódu

Vizualizace závislostí kódu v grafech závislostí

Vytváření diagramů vrstev z kódu