Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Visual Studio kódtérképei segíthetnek elkerülni a nagy kódbázisokban, ismeretlen kódokban vagy régi kódokban való elveszést. Ha például hibakeresést végzett, előfordulhat, hogy számos fájlban és projektben meg kell vizsgálnia a kódot. Kódtérképek használatával navigálhat a kódrészletek között, és megértheti a köztük lévő kapcsolatokat. Így nem kell nyomon követnie ezt a kódot a fejében, és nem kell külön diagramot rajzolnia. Így ha a munka megszakad, a kódtérképek segítenek frissíteni a memóriát a kódról, amelyen dolgozik.
Egy zöld nyíl jelzi, hogy hol jelenik meg a kurzor a szerkesztőben
A kódtérképek használatakor használható parancsok és műveletek részleteiért lásd: Kódtérképek tallózása és átrendezése.
További információ a Visual Studióban történő hibakeresésről a Hibakereső eszközzel.
Megjegyzés:
Kódtérképek létrehozásához és szerkesztéséhez Visual Studio Enterprise-kiadásra van szükség. A Visual Studio Community és Professional kiadásokban megnyithatja az Enterprise kiadásban létrehozott diagramokat, de nem szerkesztheti őket.
A probléma ismertetése
Tegyük fel, hogy hiba van egy rajzprogramban, amelyen éppen dolgozik. A hiba reprodukálásához nyissa meg a megoldást a Visual Studióban, és nyomja le az F5 billentyűt a hibakeresés megkezdéséhez.
Amikor rajzol egy vonalat, és az utolsó vonás visszavonása lehetőséget választja, semmi sem történik, amíg meg nem rajzolja a következő sort.
Ezért a metódus keresésével kezdi meg a Undo vizsgálatot. Az PaintCanvas osztályban találja meg.
A kód leképezésének megkezdése
Most kezdje el a undo metódus és annak kapcsolatai leképezését. A kódszerkesztőben hozzáadja a undo metódust és azokat a mezőket, amelyekre hivatkozik egy új kódtérképre. Amikor új térképet hoz létre, eltarthat egy ideig, amíg indexeli a kódot. Ez segít a későbbi műveletek gyorsabb futtatásában.
Jótanács
A zöld kiemelés a térképhez utoljára hozzáadott elemeket jeleníti meg. A zöld nyíl a kurzor pozícióját jeleníti meg a kódban. Az elemek közötti nyilak különböző kapcsolatokat jelölnek. A térképen lévő elemekről további információt az egérmutató mozgatásával és az elemleírások vizsgálatával kaphat.
Navigálás és kód vizsgálata a térképről
Az egyes mezők kóddefiníciójának megtekintéséhez kattintson duplán a térképen lévő mezőre, vagy jelölje ki a mezőt, és nyomja le az F12 billentyűt. A zöld nyíl a térkép elemei között mozog. A kurzor a kódszerkesztőben is automatikusan mozog.
Jótanács
A térkép zöld nyilat úgy is áthelyezheti, hogy a kurzort a kódszerkesztőben helyezi el.
A kódrészletek közötti kapcsolatok ismertetése
Most már szeretné tudni, hogy melyik másik kód lép kölcsönhatásba a history és a paintObjects mezőkkel. Hozzáadhatja az összes olyan metódust, amely ezekre a mezőkre hivatkozik a térképen. Ezt a térképen vagy a kódszerkesztőben teheti meg.
Megjegyzés:
Ha olyan projektből ad hozzá elemeket, amelyek több alkalmazáson (például Windows Phone-on vagy Windows Áruházban) vannak megosztva, akkor ezek az elemek mindig az aktuálisan aktív alkalmazásprojekttel jelennek meg a térképen. Így ha a környezetet egy másik alkalmazásprojektre módosítja, akkor a térképen lévő környezet a megosztott projektből újonnan hozzáadott elemekre is módosul. A térképen lévő elemekkel végzett műveletek csak azokra az elemekre vonatkoznak, amelyek azonos kontextusban vannak.
Módosítsa az elrendezést a kapcsolatok folyamatának átrendezéséhez és a térkép könnyebb olvashatóságához. Az elemeket húzással is áthelyezheti a térképen.
Jótanács
Alapértelmezés szerint a növekményes elrendezés be van kapcsolva. Ez az új elemek hozzáadásakor a lehető legkisebb mértékben átrendezi a térképet. Ha minden új elem hozzáadásakor át szeretné rendezni a teljes térképet, kapcsolja ki a Növekményes elrendezést.
Vizsgáljuk meg ezeket a módszereket. A térképen kattintson duplán a PaintCanvas metódusra, vagy válassza ki ezt a módszert, és nyomja le az F12 billentyűt. Megtudhatja, hogy ez a metódus a history és paintObjects üres listáként hozza létre.
Most ismételje meg ugyanazokat a lépéseket a clear metódusdefiníció vizsgálatához. Ön megtudja, hogy a clear feladatokat a paintObjects és history segítségével hajt végre. Ezután meghívja a metódust Repaint .
Most vizsgálja meg a metódusdefiníciót addPaintObject . Emellett bizonyos feladatokat is végrehajt a következővel history : és paintObjects. A(z) Repaint-t is meghívja.
A probléma megkeresése a térkép vizsgálatával
Úgy tűnik, hogy az összes metódus, amely módosítja history és paintObjects meghívja Repaint. Mégis, a undo metódus nem hívja meg Repaint-et, annak ellenére hogy a undo ugyanazokat a mezőket módosítja. Azt gondolja, hogy ezt a problémát megoldhatja úgy, hogy a Repaint-t hívja a undo-ből.
Ha nem rendelkezik térképpel a hiányzó hívás megjelenítéséhez, előfordulhat, hogy nehezebb volt megtalálni ezt a problémát, különösen összetettebb kóddal.
A felderítés és a következő lépések megosztása
Mielőtt Ön vagy valaki más kijavítja ezt a hibát, jegyzeteket készíthet a térképen a problémáról és a probléma megoldásáról.
Megjegyzéseket fűzhet például a térképhez, és színekkel jelölheti meg az elemeket.
Ha telepítve van a Microsoft Outlook, e-mailben elküldheti a térképet másoknak. A térképet képként vagy más formátumban is exportálhatja.
Javítsa ki a problémát, és mutassa meg, mit tett
A hiba kijavításához adja hozzá a Repaint hívást a undo-hez.
A javítás megerősítéséhez indítsa újra a hibakeresési munkamenetet, és próbálja meg reprodukálni a hibát. Most az Utolsó vonás visszavonása kiválasztása úgy működik, ahogy elvárja, és megerősíti, hogy a megfelelő javítást végezte.
Frissítheti a térképet, hogy megjelenítse a javítást.
A térkép most egy hivatkozást jelenít meg a visszavonás és az újrafestés között.
Megjegyzés:
A térkép frissítésekor megjelenhet egy üzenet, amely szerint a térkép létrehozásához használt kódindex frissült. Ez azt jelenti, hogy valaki módosította a kódot, ami miatt a térkép nem felel meg az aktuális kódnak. Ez nem akadályozza meg a térkép frissítését, de előfordulhat, hogy újra létre kell hoznia a térképet annak ellenőrzéséhez, hogy megfelel-e a kódnak.
Most befejezte a nyomozást. A kód leképezésével sikeresen megtalálta és kijavította a problémát. Emellett van egy térképe, amely segít navigálni a kód körül, emlékezni a tanultakra, és megjeleníti a probléma megoldásához szükséges lépéseket.