Ladění aplikace pomocí GitHub Copilotu v sadě Visual Studio

V tomto článku se dozvíte, jak efektivněji ladit pomocí GitHub Copilotu. Copilot může poskytnout opravy kódu spolu s hloubkovou analýzou a vysvětlením fungování kódu. Pomáhá s navrhovanými opravami chyb a vysvětluje věci, jako jsou výjimky. Copilot rozumí zásobníkům volání, rámcům, názvům proměnných a hodnotám. V důsledku toho můžete interagovat s AI pracujícím s ladicím programem a pokládat podrobné otázky související s vaším kódem a obecně s laděním problémů.

Kromě toho Copilot poskytuje přesnější nápovědu pro několik cílových scénářů, včetně následujících:

  • Výjimky
  • Automatické Přehledy využití procesoru

Pokud chcete získat pomoc s AI při ladění v těchto scénářích, vyhledejte tlačítko Zeptat se copilotuSnímek obrazovky s tlačítkem Zeptat se copilotu. V těchto scénářích už Copilot zná kontext vašich otázek. Zná například aktuální zásobník volání, řádek kódu, na který se ptáte, a název výjimky (pokud došlo k výjimce), takže nemusíte v chatu zadávat kontext sami.

Další informace o doplňování kopírování z GitHubu v sadě Visual Studio najdete v tématu o doplňování kopírování GitHubu v sadě Visual Studio.

Požadavky

Na začátek budete potřebovat:

Získání pomoci s AI při ladění aplikace

Následující jednoduchý příklad ukazuje, jak získat pomoc s AI pomocí vloženého zobrazení chatu.

Poznámka:

Nápovědu můžete získat také pomocí samostatného okna Chat výběrem možnosti Zobrazit > chat GitHub Copilot Chat. Další informace najdete v tématu Co je rozšíření GitHub Copilot Chat pro Visual Studio?.

Spuštění ladicí relace

  1. V sadě Visual Studio vytvořte novou konzolovou aplikaci jazyka C#.

    V úvodním okně zvolte Vytvořit nový projekt. Do vyhledávacího pole zadejte konzolu , vyberte jazyk C# a pak zvolte Konzolová aplikace pro .NET. Zvolte Další. Zadejte název projektu, například ConsoleApp_Copilot , a vyberte Další.

    Zvolte buď doporučenou cílovou architekturu, nebo .NET 8, a pak zvolte Vytvořit.

    Pokud šablonu projektu konzolové aplikace pro .NET nevidíte, přejděte do části Nástroje>Získat nástroje a funkce, která otevře Instalační program pro Visual Studio. Zvolte úlohu vývoje desktopových aplikací .NET a pak zvolte Upravit.

    Visual Studio vytvoří projekt konzoly, který se zobrazí v Průzkumník řešení v pravém podokně.

  2. Nahraďte kód v Program.cs následujícím kódem:

    using System;
    using System.Collections.Generic;
    
    public class Example
    {
        public static void Main(string[] args)
        {
            int value = Int32.Parse(args[0]);
            List<String> names = null;
            if (value > 0)
                names = new List<String>();
    
            names.Add("Major Major Major");
        }
    }
    
  3. Klikněte pravým tlačítkem myši na následující příkaz a zvolte Zarážku Vložit zarážku>.

    int value = Int32.Parse(args[0]);
    
  4. Stiskněte klávesu F5 nebo v nabídce Ladění vyberte Spustit ladění.

    Aplikace se pozastaví na zarážce. V okně Automatické položky je vidět, že proměnná args má hodnotu string[0].

    Snímek obrazovky s oknem Automatické položky

  5. Klikněte pravým tlačítkem do kódu a zvolte Zeptat se Copilotu , aby se otevřelo vložené zobrazení chatu.

  6. Do vloženého zobrazení chatu zadejte následující otázku:

    Why does the args variable have a value of string[0]?
    

    Snímek obrazovky vloženého chatu Copilot

    Když stisknete Enter, Copilot poskytne odpověď na základě jeho porozumění kódu. (Může se zobrazit jiná odpověď než zobrazená tady.)

    Snímek obrazovky s odpovědí na otázku Copilot

    Pokud má Copilot pro váš kód navrženou opravu, zobrazí se vám. Pokud ne, můžete požádat Copilot o návrh kódu.

  7. V tomto příkladu se posuňte na konec odpovědi Copilot a vyberte na konci vloženého okna Chatu následující otázku: "Jak můžu zpracovat případ, když do programu nejsou předány žádné argumenty?"

    Snímek obrazovky s následnou otázkou copilotu

    Copilot zobrazí navrhované opravy kódu.

    Snímek obrazovky s navrhovaným opravou Copilotu

    Pokud chcete použít opravu kódu, zvolte Přijmout.

  8. Zvolte Zrušit , abychom mohli pokračovat ve studiu dalších funkcí copilotu v další části.

Získání pomoci s AI pro výjimku

Následující jednoduchý příklad ukazuje, jak získat pomoc s AI, když narazíte na výjimku a jak rychle aktualizovat kód na základě navrhovaných oprav AI.

Spuštění ladicí relace

  • Během pozastavení v ladicím programu pomocí stejné ukázkové aplikace stiskněte klávesu F11 nebo Debug>Step Into a spusťte aktuální příkaz.

    Dojde IndexOutOfRangeException a aplikace se pozastaví a zobrazí se výjimka.

    Pokud chcete získat pomoc s AI pro výjimku, pokračujte k další části.

Požádat o pomoc s AI

  1. Pokud je aplikace pozastavená na výjimce, vyberte tlačítko Ask Copilot (Zeptat se zkopírovaného objektu).

    Snímek obrazovky s tlačítkem Zeptat se copilotu ve výjimce

    Pokud ještě není otevřený, zobrazí se okno chatu Copilot a zobrazí posouzení chyby a důvod, proč k ní došlo. V tomto příkladu Copilot identifikuje navrženou opravu kódu, tlačítko pro zkopírování kódu a tlačítko Náhled pro opravu kódu.

    Pokud máte dotazy k výjimce, položte je do textového pole Zeptejte se Copilotu.

  2. Vyberte tlačítko Náhled.

    Snímek obrazovky s tlačítkem Náhled v okně chatu Copilot

    Visual Studio zobrazuje náhled kódu s navrženou opravou.

  3. Projděte si navrženou opravu a zvolte Přijmout , aby se použil návrh kódu.

    Snímek obrazovky s náhledem kódu v sadě Visual Studio

  4. Znovu spusťte ladicí program.

    Tentokrát nedojde k žádné výjimce. Bylo opraveno!

Získání pomoci s AI pro automatické přehledy

Kromě pomoci s interaktivním laděním poskytuje Copilot podrobné informace v automatickém Přehledy využití procesoru. Poskytuje informace a přehledy související se sadou konkrétních přehledů výkonu. Pomocí Copilotu položte otázky týkající se funkcí na identifikovaných horkých cestách v kódu, které vám můžou pomoct vytvořit efektivnější nebo nákladově efektivnější kód.

Když nástroj Využití procesoru poskytuje automatické přehledy v horní Přehledy části, vyberte Možnost Zeptat se Copilotu, abyste se naučili z Copilotu, a začněte klást otázky.

Animace použití Copilotu s využitím procesoru