Lekce 5 - Visual Studio - Navigace v souborech
V předchozím kvízu, Kvíz - Okna, vyhledávání a formátování kódu ve Visual Studiu, jsme si ověřili nabyté zkušenosti z předchozích lekcí.
V dnešním tutoriálu se podíváme na vymoženosti vyhledávání ve funkcích Visual Studia a na navigaci po zdrojovém kódu. Na úvod si stáhněte zdejší rozsáhlejší program Karel Robot, rozbalte jej a otevřete si řešení.
Otevírání cizího řešení
Při otevíraní projektů, které pochází z cizího zdroje, to Visual
Studio vycítí a upozorní nás na možné bezpečnostní riziko. Náš projekt
Karel
však žádné nebezpečí neskrývá a proto upozornění
můžeme odkliknout tlačítkem OK:

V okně Solution Explorer si otevřete zdrojový kód
Interpret.vb
. Abychom se v editoru mohli lépe orientovat, necháme
si zobrazit čísla řádek. Již víte, že to jde přes nabídku Tools ->
Options. Zkusme to jinak. Mnohdy je jednodušší použít na hledání v
nastavení vyhledávací políčko.
Vyhledávací políčko
Visual Studio obsahuje vyhledávací políčko, které vyhledává v nabídkách a nastaveních. Nachází se vpravo nahoře vedle ikon pro minimalizace, maximalizaci a zavření Visual Studia.
Zadejme do něj "line numbers":

V seznamu se ihned objeví položka "Options", která obsahuje položky nastavení, které hledaný výraz obsahují. Klikněme na ní:

Ihned se nám otevře nastavení, kde můžeme zatrhnout zobrazování čísel řádků a potvrdit dialog tlačítkem OK.
Navigace v otevřeném souboru
Po krátké odbočce k číslům řádků se vraťme k našemu editoru. Editor v záhlaví obsahuje tři políčka pro navigaci v souboru:

První z nich vypisuje projekty, které daný soubor používají. Druhé
políčko obsahuje třídy v souboru a jejich části jako jsou události.
Třetí z nich pak ukazuje samotné členy. Když nějaký vyberete, Visual
Studio vám automaticky umístí kurzor k deklaraci dané
funkce/metody/události/... Přejděme v třídě Interpret
k
metodě KROK()
:

Průchod k deklaraci
Na řádku 51 ukládáme do proměnné souradniceK
hodnotu (ve
Visual Basic se do proměnné se přiřazuje operátorem
=
, ve stylu <proměnná> = <hodnota>
). Kde
se však proměnná souradniceK
vzala, kde je deklarována? Visual
Studio umí najít deklaraci vybrané proměnné.
K deklaraci proměnné se dostaneme tak, že na ni klikneme pravým tlačítkem myši a zvolíme Go To Definition nebo použijeme klávesu F12:

Označí se nám název proměnné na řádku, kde je deklarována (na řádku 42):
Úplně stejným způsobem můžeme přejít k deklaraci datového typu.
Stačí kliknout na datový typ (zeleno-modře označená
Souradnice
) a stisknout F12.
Otevření definice v podokně
Definici můžeme otevřít ještě v podokně. Dělá se to tak, že pravým klikneme na to, k čemu chceme otevřít definici a zvolíme Peek Definition:

V tomto malém okénku moc změn dělat nemůžeme, ani se na to díky své velikosti nehodí. Je však velmi výhodné si tak prohlížet definici. Pokud bychom chtěli, můžeme si ikonou záložky s hvězdičkou okno zvětšit do klasického okna:

Křížkem samozřejmě definici můžeme zavřít.
Jistojistě jste si všimli, že Visual Studio zvýrazňuje "stejné" věci v kódu. Když kliknete na název proměnné, okamžitě se zvýrazní všechny výskyty stejné proměnné:

Přejděme k deklaraci struktury Souradnice
.
Seznam výskytů
Visual Studio umí v rámci řešení najít všechny výskyty vybrané proměnné/třídy/struktury/rozhraní/... Stačí na ni kliknout pravým tlačítkem a zvolit Find All References:

Otevře se okno, ve kterém budou vypsána všechna umístění v kódu, kde se daný objekt používá. Když budete na položky klikat, automaticky se zobrazí zdrojový kód, kde se vyhledávaná položka používá.
Než budeme pokračovat, vložme si do projektu nový soubor.
Vkládání souboru do projektu
Do projektu si samozřejmě můžete přidat soubory, dělá se to přes kontextovou nabídku v okně Solution Explorer -> Add. V této nabídce se vespodu nachází často používané položky, které většinou dostačují. Zde v projektu máme třeba formulář, vlastní ovládací prvek, komponentu, modul a třídu, což jsou ve Visual Basic skutečně jedny z nejpoužívanějších věcí.
Ty méně často využívané nalezneme pod volbou New item, která otevře dialogové okno Add New Item. V tomto okně jsou do skupin (jako tradičně vlevo) uspořádané spousty dalších komponent, které se občas hodí. Uprostřed opět vyberete typ toho, co chcete do projektu vložit, vpravo vidíte popis a dole název nově vloženého souboru/komponenty a potvrzovací tlačítka:

Dialog zavřete. V nabídce Add se nachází ještě Folder, což jak název
napovídá založí novou složku, do které pak můžeme přidávat další
soubory. Velmi důležitá je ještě funkce Add -> Existing Item, která
otevře dialogové okno pro výběr souboru, který bude následně přidán do
projektu (vybrané složky). Stáhněte si přiložený soubor pod článkem,
rozbalte jej a do projektu si přidejte soubor regex.cs
. Ve
výchozím nastavení v rozbalené složce soubor neuvidíte, protože dialog
filtruje soubory podle koncovek a protože projekt Karel
je psaný
v jazyce Visual Basic, dialog nezobrazuje zdrojové kódy v C#. V roletce vedle názvu souboru si vyberte All Files:

Všimněte si, že potvrzovací tlačítko Add má vedle sebe šipečku, kterou když rozkliknete, tak se otevře kontextová nabídka. V té je ještě, krom klasického potvrzovacího tlačítka Add, tlačítko Add As Link:

Rozdíl mezi Add a Add As Link je v tom, kdy Visual Studio soubor skutečně zkopíruje a kdy jen vytvoří odkaz. Není to ani zástupce (symbolický link), ale jen předává kompilátorům odkaz na soubor. Dalším rozdílem mezi kopií a odkazem je, že když v kopii změníte jeden soubor, druhého se změna nedotkne, zatímco u odkazu se vždy mění zdrojový soubor (a odkaz samozřejmě také). Výhodné je to, když je jeden zdrojový kód v rámci více projektů a všude by měl být stejný. Nevýhoda je to třeba u vývoje webů, protože servery, které nevyvíjí Microsoft (Apache a podobné) tomuto systému nerozumí, neumí s nimi pracovat a tento soubor nevidí.
Vložme si soubor regex.cs
normální cestou a následně jej
otevřete. Budeme s ním pracovat v dalších lekcích. Zatím si můžete
zkoušet procházet soubory řešení a navigovat se mezi nimi.
V příští lekci, Visual Studio - Pomocníci při psaní kódu, se budeme věnovat pomocníkům při psaní kódu.
Stáhnout
Stažením následujícího souboru souhlasíš s licenčními podmínkamiStaženo 1239x (652 B)