Sdílet prostřednictvím


Mapování konkrétních závislostí na mapách kódu

Pokud chcete se dozvědět specifické závislosti ve vašem kódu, vizualizovat jejich vytvořením map kódu (Visual Studio Ultimate pouze).Přejděte na tyto relace pomocí mapování, která se zobrazí vedle vašeho kódu.Díky tomu můžete sledovat jakém místě v kódu při práci.

Mapa kódu – mapa vztahy v kódu

Ukazuje zelenou šipku, kde se ukazatel se objeví v editoru. Na mapě si můžete dělat poznámky stejně jako na papír.

Mapy kódu umožňují předcházet ztrátě orientace v rozsáhlých kódech, neznámém kódu nebo starším kódu.Při ladění bude například pravděpodobně nutné ověřit kód v mnoha souborech a projektech.Mapy kódu umožňují navigaci v těchto částech kódu a zobrazení vztahů mezi nimi.Nemusíte si pamatovat celý tento kód, sledovat jednotlivé soubory nebo kreslit samostatné schéma na papír.Pokud musíte přerušit práci, mapy kódu vám pomohou připomenout si kód, na kterém jste pracovali.

Vytvořte nebo otevřete mapy kódu

Chcete-li vytvořit mapu kódu je nutné Visual Studio Ultimate 2013 a řešení, které má Visual C# .NET, Visual Basic .NET, X ++ pro Microsoft Dynamics AX nebo kódu jazyka C++ (omezená podpora).Chcete-li získat barevně relace, bude nutné Visual Studio 2013 Update 3.Pro mapování kódu X ++ a kód, který je sdílen mezi více aplikacemi, budete potřebovat Visual Studio 2013 Update 2 nebo novější.

Je možné vytvořit mapy kódu podle:

  • Pravým tlačítkem myši na položku například zdrojového souboru nebo binární soubor v Průzkumníku řešení a výběrem příkazu Zobrazit na mapě kódu.Tím se vytvoří mapa kódu pro vybranou položku.

  • Přetažení položky například zdrojového souboru nebo binárního souboru z Průzkumníka řešení na mapování kódu open zahrnout a zvýrazněte položku v mapě.

  • Pravým tlačítkem myši na prázdnou oblast v okně editoru a výběrem Zobrazit na mapě kódu.Tím se vytvoří nové mapování prázdný kód.

  • Pravým tlačítkem myši na objektu nebo třídy v okně editoru a výběrem příkazu Zobrazit na mapě kódu.Tím se vytvoří mapa kódu pro vybranou položku.Můžete také vyhledat všechny odkazy nebo související položky zobrazit na mapě kódu pomocí této nabídky.

  • Klepnutím na položku mapy kódu na tlačítko ladění menu, pokud aplikace je pozastavena.

  • Ze souboru open IntelliTrace, nebo jako graf závislosti z Architektura nabídky.

Je možné zobrazení, provádět omezené úpravy, a přejděte kód map pomocí Visual Studio Premium 2013 nebo Visual Studio Professional 2013.

Před maps sdílíte s jinými uživateli, kteří použít Premium nebo Professional, ujistěte se, že jsou všechny položky na mapě viditelný, například skryté položky, rozbalený skupin a seskupení křížových odkazů.

Podívejte se, jak map kódu ve akce: Principy komplexní kódu pomocí mapy kódu (Channel 9)

Pochopení problému

Předpokládejme, že je chyba v programu kreslení, na kterém právě pracujete.Chcete-li reprodukovat chybu, otevřete řešení v aplikaci Visual Studio Ultimate a stiskněte klávesu F5 pro spuštění ladění.

Když nakreslíte čáru a zvolíte Vrátit zpět poslední tah, nic se nestane, dokud nenakreslíte další čáru.

Mapa kódu - reprodukovat

Takže začnete zjišťovat hledáním metody Undo.Najdete ho ve třídě PaintCanvas.

Mapa kódu – najít kód

Spuštění mapování kódu

Nyní spusťte mapování metody undo a jejích vztahů.V editoru kódu přidejte metodu undo a pole, která odkazují na mapu s novým kódem.Když vytvoříte nové mapování, může zaindexování kódu trvat nějakou dobu.To pomáhá rychlejšímu běhu pozdějších operací.

Mapa kódu - metoda zobrazit a souvisejících polí

Tip

Zelené zvýraznění zobrazí poslední položky, které byly přidány do mapy.Zelená šipka ukazuje pozici kurzoru v kódu.Šipky mezi položkami představují různé vztahy.Na mapě můžete získat další informace o položkách prozkoumáním jejich popisků.

Mapa kódu - zobrazit tipy

Procházení a zkoumání kódu z mapy

Chcete-li zobrazit definici kódu pro každé pole, poklepejte na pole na mapě nebo vyberte pole a stiskněte klávesu F12.Zelená šipka se přesune mezi položkami na mapě.Kurzor v editoru kódu se také přesune automaticky.

Mapa kódu – zkontrolujte definice pole

Mapa kódu – zkontrolujte definice pole

Tip

Zelenou šipku na mapě můžete také přesunout přesunutím kurzoru v editoru kódu.

Pochopení vztahů mezi částmi kódu

Nyní chcete vědět, jaký další kód spolupracuje s poli history a paintObjects.Můžete do mapy přidat všechny metody, které odkazují na tato pole.To lze provést z mapy nebo z kódu.

Mapa kódu – vyhledání všech odkazů

Změňte rozložení a uspořádejte tak tok vztahů a usnadněte čtení z mapy.Položky kolem mapy lze také přesunout přetažením.

Mapa kódu - změnit rozložení

Tip

Ve výchozím nastavení je Přírůstkové rozložení zapnuto.To při přidání nových položek mění uspořádání mapy co nejméně.Chcete-li uspořádat celou mapu při každém přidání nových položek, vypněte možnost Přírůstkové rozložení.

Mapa kódu - změnit rozložení

Podívejme se na tyto metody.Na mapě dvakrát klikněte na metodou PaintCanvas nebo zvolte tuto metodu a stiskněte klávesu F12.Zjistíte, že tato metoda vytvoří history a paintObjects jako prázdný seznam.

Mapa kódu – zkontrolujte definice metody

Nyní opakujte stejný postup k prozkoumání definice metody clear.Zjistíte, že clear provádí úkoly v rámci paintObjects a history.Poté volá metodu Repaint.

Mapa kódu – zkontrolujte definice metody

Nyní prozkoumejte definici metody addPaintObject.Provádí také některé úkoly s objekty history a paintObjects.Volá také funkci Repaint.

Mapa kódu – zkontrolujte definice metody

Nalezení příčiny problému prozkoumáním mapy

Zdá se, že všechny metody, které mění objekty history a paintObjects, volají funkci Repaint.Metoda undo přesto nevolá Repaint, i když undo mění stejná pole.Takže si myslíte, že tento problém můžete vyřešit voláním Repaint z undo.

Mapa kódu – najít chybějící volání metody

Pokud by nebyla nastavena mapa k zobrazení tohoto chybějícího volání, mohlo by být nalezení tohoto problému obtížnější, zejména u složitějšího kódu.

Sdílení zjištění a další kroky

Předtím, než vy nebo někdo jiný tuto chybu vyřeší, si můžete dělat na mapě poznámky o problému a způsobu jeho řešení.

Mapa kódu – komentář a příznaku položky pro zpracování

Můžete například přidat komentáře do mapy a označit položky pomocí barev.

Mapa kódu - komentářů a s příznakem položky

Pokud máte nainstalovanou aplikaci Microsoft Outlook, můžete mapu e-mailem odeslat ostatním.Mapu taky můžete exportovat jako obrázek nebo jiný formát.

Kód mapa – sdílené složky, export, e-mailů

Vyřešení problému a zobrazení provedené činnosti

Chcete-li vyřešit tuto chybu, přidejte volání pro Repaint do undo.

Mapa kódu – přidání chybějící volání metody

Chcete-li potvrdit svou opravu, restartujte relaci ladění a zkuste chybu reprodukovat.Nyní volba Vrátit zpět poslední tah funguje podle očekávání a potvrdí provedení správné opravy.

Mapa kódu – potvrďte oprava kódu

Můžete aktualizovat mapu, aby zobrazovala provedené opravy.

Mapa kódu – aktualizace mapy s chybějícími volání metody

Mapa nyní zobrazuje spojení mezi zpět a Překreslit.

Mapa kódu - aktualizované mapování se volání metody

[!POZNÁMKA]

Při aktualizaci mapy se může zobrazit zpráva, že byl aktualizován index kódu použitý k vytvoření mapy.To znamená, že někdo změnil kód, což způsobilo, že se vaše mapa neshoduje s aktuálním kódem.To vám nezabrání v aktualizaci mapy, ale chcete-li ověřit, že mapa odpovídá kódu, pravděpodobně ji budete muset znovu vytvořit.

Nyní je vaše šetření hotovo.Úspěšně jste našli a opravili problém pomocí mapování kódu.Máte k dispozici také mapu, která usnadňuje navigaci v rámci kódu, zapamatuje si, co jste se naučili, a zobrazí kroky, které jste provedli v zájmu vyřešení problému.

Viz také

Koncepty

Mapování metod v zásobníku volání při ladění v sadě Visual Studio

Vizualizace kódu