Kurz: Ladění konzolové aplikace .NET pomocí Visual Studio pro Mac

Důležité

Společnost Microsoft oznámila vyřazení Visual Studio pro Mac. Visual Studio pro Mac již nebudou podporovány od 31. srpna 2024. Mezi alternativy patří:

Další informace najdete v tématu Visual Studio pro Mac oznámení o vyřazení z provozu.

Tento kurz představuje nástroje pro ladění dostupné v Visual Studio pro Mac.

Požadavky

Použití konfigurace sestavení ladění

Ladění a vydání jsou integrované konfigurace sestavení sady Visual Studio. Konfiguraci sestavení ladění použijete k ladění a konfiguraci vydané verze pro konečnou distribuci vydané verze.

V konfiguraci ladění se program zkompiluje s úplnými symbolickými informacemi o ladění a bez optimalizace. Optimalizace komplikuje ladění, protože vztah mezi zdrojovým kódem a vygenerovanými instrukcemi je složitější. Konfigurace verze programu nemá žádné symbolické informace o ladění a je plně optimalizovaná.

Ve výchozím nastavení Visual Studio pro Mac používá konfiguraci sestavení ladění, takže ji před laděním nemusíte měnit.

  1. Spusťte Visual Studio pro Mac.

  2. Otevřete projekt, který jste vytvořili v části Vytvoření konzolové aplikace .NET pomocí Visual Studio pro Mac.

    Aktuální konfigurace sestavení se zobrazí na panelu nástrojů. Následující obrázek panelu nástrojů ukazuje, že sada Visual Studio je nakonfigurovaná tak, aby kompilovala verzi ladění aplikace:

    Visual Studio toolbar with debug highlighted

Nastavení zarážky

Zarážka dočasně přeruší provádění aplikace před spuštěním řádku se zarážkou.

  1. Nastavte na řádku zarážku, která zobrazuje název, datum a čas. Uděláte to tak, že umístíte kurzor na řádek kódu a stisknete \ (příkaz+\). Dalším způsobem nastavení zarážky je výběr přepínače ladění>zarážky z nabídky.

    Visual Studio označuje čáru, na které je zarážka nastavená, zvýrazněním a zobrazením červené tečky na levém okraji.

    Visual Studio Program window with breakpoint set

  2. Stisknutím kláves ⌘ (command+enter) spusťte program v režimu ladění. Dalším způsobem, jak spustit ladění, je zvolením možnosti Spustit>ladění z nabídky.

  3. Po zobrazení výzvy aplikace k zadání názvu zadejte řetězec v okně terminálu a stiskněte klávesu Enter.

  4. Spuštění programu se zastaví, když dosáhne zarážky, před Console.WriteLine spuštěním metody.

    Screenshot of a breakpoint in Visual Studio

Použití okna Okamžité

Okno Okamžité umožňuje interakci s aplikací, kterou ladíte. Hodnotu proměnných můžete interaktivně změnit, abyste viděli, jak ovlivňuje váš program.

  1. Pokud není okno Okamžité viditelné, zobrazte ho tak, že zvolíte Zobrazit ladicí>okno Windows>Immediate.

  2. Zadejte name = "Gracie" do příkazovéhookna a stiskněte enter.

  3. Zadejte currentDate = currentDate.AddDays(1) do příkazovéhookna a stiskněte enter.

    V okně Okamžité se zobrazí nová hodnota řetězcové proměnné a vlastnosti DateTime hodnoty.

    Immediate Window in Visual Studio

    V okně Locals se zobrazí hodnoty proměnných, které jsou definovány v aktuálně spuštěné metodě. Hodnoty proměnných, které jste právě změnili, se aktualizují v okně Místní hodnoty.

    Locals Window in Visual Studio

  4. Pokračujte v ladění stisknutím kláves ⌘ (command+enter).

    Hodnoty zobrazené v terminálu odpovídají změnám, které jste provedli v okně Okamžité .

    Pokud terminál nevidíte, vyberte Terminál – HelloWorld v dolním navigačním panelu.

    Terminal - Hello World in bottom navigation bar

  5. Stisknutím libovolné klávesy program ukončete.

  6. Zavřete okno terminálu.

Nastavení podmíněné zarážky

Program zobrazí řetězec, který uživatel zadá. Co se stane, když uživatel nic nezadá? Můžete to otestovat pomocí užitečné funkce ladění označované jako podmíněná zarážka.

  1. Stiskněte ctrl a klikněte na červenou tečku, která představuje zarážku. V místní nabídce vyberte Upravit zarážku.

  2. V dialogovém okně Upravit zarážku zadejte následující kód do pole, které následuje , a následující podmínka je true a vyberte Použít.

    String.IsNullOrEmpty(name)
    

    Editor showing breakpoint settings panel

    Pokaždé, když se zarážka dosáhne, ladicí program volá metodu String.IsNullOrEmpty(name) a na tomto řádku se přeruší pouze v případě, že volání metody vrátí true.

    Místo podmíněného výrazu můžete zadat počet přístupů, který přeruší provádění programu před provedením příkazu zadaným počtem opakování.

  3. Stisknutím kláves ⌘ (command+enter) spusťte ladění.

  4. V okně terminálu stiskněte klávesu Enter , když se zobrazí výzva k zadání vašeho jména.

    Vzhledem k tomu, že zadaná podmínka (name je buď null nebo String.Empty) splněná, provádění programu se zastaví, jakmile dosáhne zarážky.

  5. Vyberte okno Místní hodnoty, které zobrazuje hodnoty proměnných, které jsou místní pro aktuálně spuštěnou metodu. V tomto případě Main je aktuálně spuštěná metoda. Všimněte si, že hodnota name proměnné je "", to znamená String.Empty.

  6. Můžete také vidět, že hodnota je prázdný řetězec zadáním name názvu proměnné v okně Okamžité a stisknutím klávesy Enter.

    Immediate window showing name is an empty string

  7. Pokračujte v ladění stisknutím kláves ⌘ (command+enter).

  8. V okně terminálu stisknutím libovolné klávesy program ukončete.

  9. Zavřete okno terminálu.

  10. Vymažte zarážku kliknutím na červenou tečku na levém okraji okna kódu. Dalším způsobem, jak vymazat zarážku, je volba Ladit > přepnout zarážku při výběru řádku kódu.

Procházení programu

Visual Studio vám také umožňuje krokovat po řádku prostřednictvím programu a monitorovat jeho provádění. Obvykle byste nastavili zarážku a sledovali tok programu malou částí kódu programu. Vzhledem k tomu, že je tento program malý, můžete procházet celý program.

  1. Nastavte zarážku na složené závorce, která označuje začátek Main metody (stiskněte příkaz+\).

  2. Stisknutím kláves ⌘ (command+enter) spusťte ladění.

    Visual Studio se zastaví na řádku se zarážkou.

  3. Stiskněte I (příkaz+shift+I) nebo vyberte Krok pro ladění>a přejděte o jeden řádek.

    Visual Studio zvýrazní a zobrazí šipku vedle dalšího řádku provádění.

    Visual Studio step into method

    V tomto okamžiku okno Místní hodnoty ukazuje, že args pole je prázdné a namecurrentDate má výchozí hodnoty. Kromě toho sada Visual Studio otevřela prázdný terminál.

  4. Stiskněte I (shift+command+I).

    Visual Studio zvýrazní příkaz, který zahrnuje name přiřazení proměnné. V okně Místní hodnoty se namenullzobrazí řetězec "What is your name?".

  5. Odpovězte na výzvu zadáním řetězce v okně konzoly a stisknutím klávesy Enter.

  6. Stiskněte I (shift+command+I).

    Visual Studio zvýrazní příkaz, který zahrnuje currentDate přiřazení proměnné. Okno Locals zobrazuje hodnotu vrácenou voláním Console.ReadLine metody. V terminálu se zobrazí řetězec, který jste zadali na příkazovém řádku.

  7. Stiskněte I (shift+command+I).

    Okno Locals zobrazuje hodnotu currentDate proměnné za přiřazením z DateTime.Now vlastnosti. Terminál se nezmění.

  8. Stiskněte I (shift+command+I).

    Visual Studio volá metodu Console.WriteLine(String, Object, Object) . V terminálu se zobrazí formátovaný řetězec.

  9. Stiskněte U (+shift command+U) nebo vyberte Spustit>krok ven.

    V terminálu se zobrazí zpráva a počká, až stisknete klávesu.

  10. Stisknutím libovolné klávesy program ukončete.

Použití konfigurace sestavení vydané verze

Po otestování verze ladění aplikace byste také měli zkompilovat a otestovat verzi vydané verze. Verze vydané verze zahrnuje optimalizace kompilátoru, které mohou negativně ovlivnit chování aplikace. Optimalizace kompilátoru navržené tak, aby zlepšily výkon, můžou například vytvářet podmínky časování ve vícevláknových aplikacích.

Pokud chcete sestavit a otestovat verzi konzolové aplikace, proveďte následující kroky:

  1. Změňte konfiguraci sestavení na panelu nástrojů z ladění na verzi.

    default Visual Studio toolbar with release highlighted

  2. Stisknutím kláves (příkaz+option+enter) spusťte bez ladění.

Další kroky

V tomto kurzu jste použili nástroje pro ladění sady Visual Studio. V dalším kurzu publikujete nasaditelnou verzi aplikace.