Untersuchen der Codeentwicklungsfeatures von GitHub Copilot

Abgeschlossen

Visual Studio Code implementiert GitHub Copilot mithilfe von zwei Erweiterungen: GitHub Copilot und GitHub Copilot Chat. Diese Erweiterungen steigern die Produktivität der Entwickler, indem Vorschläge generiert werden, die Ihre Anwendungen erweitern oder verbessern. Jede Erweiterung bietet verschiedene Features, mit denen Sie Code effizienter entwickeln können:

  • Die Erweiterung „GitHub Copilot“ generiert Vorschläge zur Codevervollständigung mithilfe des Codes, den Sie im Editor oder in Ihren Codekommentaren eingeben.
  • Die Erweiterung „GitHub Copilot Chat“ generiert Codevorschläge basierend auf Chatinteraktionen oder intelligenten Aktionen, die Aktionen für ausgewählten Code ausführen.

Hinweis

In diesem Modul verwenden Sie die GitHub Copilot-Erweiterungen, um neue Codefeatures und Anwendungen zu entwickeln. Es gibt zwei separate Module, welche die Verwendung von GitHub Copilot abdecken, um Komponententests zu erstellen und Verbesserungen an bereits vorhandenem Code vorzunehmen.

GitHub Copilot-Tools in Visual Studio Code

Visual Studio Code bietet einfachen Zugriff auf die folgenden Features von GitHub Copilot und GitHub Copilot Chat:

  • Codezeilenvervollständigungen: Verwenden Sie Codezeilenvervollständigungen, um Code effizienter zu schreiben.
  • Inlinechat: Starten Sie direkt über den Editor einen Inlinechat, um Hilfe beim Programmieren zu erhalten.
  • Chatansicht: Öffnen Sie einen KI-Assistenten, der Sie jederzeit unterstützen kann.
  • Schnellchat: Stellen Sie eine kurze Frage, und kehren Sie zu Ihrer Arbeit zurück.
  • Intelligente Aktionen: Führen Sie intelligente Aktionen aus, um bestimmte Aufgaben auszuführen, ohne selbst einen Prompt schreiben zu müssen.

Die GitHub Copilot-Erweiterungen bringen die Leistungsfähigkeit von KI in die Visual Studio Code-Umgebung.

Generieren von Code unter Verwendung von Codezeilenvervollständigungen mit GitHub Copilot

GitHub Copilot generiert während der Codeeingabe Codezeilenvervollständigungen. Der bestehende Anwendungscode stellt Kontext bereit, den GitHub Copilot verwendet, um genaue Vorschläge zu generieren. Angenommen, Sie arbeiten an einer Klasse, die Kundenausgaben verarbeitet. Die Klasse verwendet eine Liste, die die Ausgaben aller Kunden enthält. Sie müssen eine Methode erstellen, die die Summe aller Ausgaben zurückgibt. Wenn Sie mit der Eingabe der Methodensignatur beginnen, generiert GitHub Copilot einen Vorschlag, der die Codezeile vervollständigt.

Screenshot: Codezeilenvervollständigung auf Basis des Codes

Um den Vorschlag anzunehmen, drücken Sie die TAB-TASTE, oder wählen Sie Annehmen aus. Automatische Vervollständigungen sparen Ihnen Zeit und helfen Ihnen, Code richtig zu schreiben, indem die Namen von Variablen und anderen Codeelementen angeben werden.

Sie können auch Codezeilenvervollständigungen verwenden, um verschiedene Optionen zum Erstellen des Codes anzuzeigen. Wenn Sie beispielsweise die Aufrufanweisung einer Methode beginnen, stellt GitHub Copilot Vorschläge bereit, die die verschiedenen Methodenüberladungen implementieren. Sie können die Vorschläge durchgehen und die Option übernehmen, die am besten Ihrer Absicht entspricht. Sie können aber natürlich auch alle Vorschläge ablehnen. Dieser Prozess hilft Ihnen dabei, schnell verschiedene Programmierstile und -techniken zu erkunden.

GitHub Copilot generiert Vorschläge zur Codezeilenvervollständigungen auch aus Codekommentaren. Wenn Sie beispielsweise einen Kommentar eingeben, der eine Methode beschreibt, die Sie erstellen möchten, generiert GitHub Copilot einen Vorschlag für die Methodensignatur und -implementierung.

Screenshot: Codezeilenvervollständigung auf Basis eines Kommentars

Wie Sie sehen, werden für die vorgeschlagene Codevervollständigung Informationen aus Ihrem vorhandenen Code und dem Codekommentar verwendet, der die Methode beschreibt.

Entwickler verwenden die Codevervollständigung, um die Entwicklung der initialen Codestruktur zu beschleunigen.

Generieren von Code mithilfe von GitHub Copilot Chat

GitHub Copilot Chat hilft Ihnen beim Erstellen von Code mithilfe von Chatschnittstellen und intelligenten Aktionen. Wenn Sie GitHub Copilot Chat beispielsweise durch Eingabe eines Prompts auffordern, eine neue Methode zu erstellen, stellt GitHub Copilot Vorschläge für mindestens eine Methodensignatur und deren Implementierung bereit. Diese Vorschläge zu prüfen und dann zu übernehmen oder abzulehnen, ermöglicht Ihnen eine schnellere und korrektere Erstellung einer initialen Version Ihres Codes.

Hinweis

Die Erweiterung „GitHub Copilot Chat“ für Visual Studio Code enthält eine Chatschnittstelle, die Benutzereingaben verarbeitet: In dieser Schulung werden die Begriffe Frage und Prompt in Bezug auf die Eingabe verwendet, die Sie während einer Chatsitzung bereitstellen.

GitHub Copilot Chat ist besonders hilfreich, wenn Sie Code entwickeln müssen, der unbekannte Ressourcen implementiert, z. B. eine neue Bibliothek, ein neues Framework oder eine neue API. Wenn Sie einen Prompt übermitteln, der Ihre Anforderung beschreibt, generiert GitHub Copilot Chat Vorschläge, die zeigen, wie Sie Ihr Ziel erreichen können. Durch die Prüfung der Vorschläge können Sie auch erfahren, wie Sie die neuen Ressourcen implementieren.

Wenn die an GitHub Copilot Chat gestellten Fragen oder gesendeten Prompts einen eindeutigen Bereich und eine klare Absicht aufweisen, hilft dies dabei, die generierten Antworten zu verbessern. Sie können Fragen stellen, die Kontext bereitstellen, und Ihre Anforderungen im Unterhaltungsstil beschreiben. GitHub Copilot Chat verwendet die von Ihnen bereitgestellten Informationen, um Codevorschläge zu generieren, die Ihren Anforderungen entsprechen und Ihrem Programmierstil entsprechen.

Sie können Chatteilnehmer, Schrägstrichbefehle und Chatvariablen verwenden, um den Kontext Ihrer Prompts zu verdeutlichen.

  • Chatteilnehmer wie @workspace oder @terminal helfen GitHub Copilot Chat dabei, den Kontext Ihrer Frage zu verstehen.
  • Schrägstrichbefehle wie /explain oder /new helfen Copilot Chat dabei, die Absicht oder den Zweck Ihrer Frage zu verstehen.
  • Chatvariablen, z. B. #file oder #editor, helfen Copilot Chat, sich im größeren Kontext Ihrer Frage auf etwas Spezifisches zu konzentrieren.

Die Verwendung dieser speziellen Deskriptoren hilft GitHub Copilot Chat dabei, präzisere und hilfreichere Antworten zu generieren.

Sie können Chatteilnehmer mit Schrägstrichbefehlen kombinieren, um bestimmte Aktionen auszuführen. Sie können beispielsweise ein Gerüst für eine neue C#-Konsolenanwendung erstellen, indem Sie den folgenden Prompt verwenden: @workspace /new console application in C#. Dieser Prompt enthält einen Chatteilnehmer (@workspace) und einen Schrägstrichbefehl (/new), um GitHub Copilot Chat bei der Ausführung der beabsichtigten Aufgabe zu unterstützen.

Screenshot: Chat zum Erstellen eines Gerüsts für eine Konsolen-App

GitHub Copilot kann das Gerüst für komplexere Arbeitsbereiche erstellen. Mit dem folgenden Prompt wird beispielsweise der Arbeitsbereich für eine Node.js-Anwendung erstellt, die das Express-Framework, die Pug-Vorlagen-Engine sowie TypeScript verwendet: @workspace /new Node.js Express Pug TypeScript.

Generieren von Code mit GitHub Copilot Chat unter Verwendung der Chatansicht

Die Chatansicht in Visual Studio Code bietet Zugriff auf einen KI-Assistenten, mit dem Sie Code entwickeln können. Sie können Fragen stellen und Hilfe von Ihrem KI-Assistenten erhalten, ohne die Visual Studio Code-Umgebung verlassen zu müssen. Die Chatansicht bietet Unterstützung beim Entwickeln von Code und beim Untersuchen von Ansätzen zur Lösung schwieriger Codeprobleme. Sie können die Chatansicht auch verwenden, um Fragen zu vorhandenem Code zu stellen, Hilfe zu Fehlern oder Logik von Code zu erhalten und Informationen zur Verwendung von Projektressourcen abzurufen. Die Chatansicht kann Ihnen dabei helfen, neue Programmiertechniken zu lernen, verschiedene Programmierstile kennenzulernen und Ihre Programmierfertigkeiten zu verbessern.

Die Chatansicht wird in einem eigenen Bereich rechts neben dem Code-Editor von Visual Studio Code geöffnet. Um die Chatansicht zu öffnen, wählen Sie im Visual Studio Code Command Center Chat öffnen aus, oder verwenden Sie die Tastenkombination STRG+ALT+I.

Screenshot: Begrüßung der Chatansicht in Visual Studio Code

Wenn Sie mehr Bildschirmfläche in Visual Studio Code benötigen, können Sie die Chatansicht in einem separaten Fenster öffnen, indem Sie im Kontextmenü der Chatansicht Chat in neuem Fenster öffnen auswählen.

Screenshot: Antwort auf eine Frage in der Chatansicht in Visual Studio Code

GitHub Copilot Chat stellt umfangreiche und interaktive Ergebnisse bereit, zum Beispiel:

  • Einfacher Text Antworten in natürlicher Sprache
  • Bilder. Diagramme oder Screenshots
  • Schaltflächen Trigger für Aktionen
  • Verweise. Uniform Resource Identifiers (URIs), in denen Sie weitere Informationen finden können.
  • Dateistrukturen (beispielsweise, um eine Arbeitsbereichsvorschau anzuzeigen, wenn ein Chatteilnehmer die Erstellung eines neuen Arbeitsbereichs vorschlägt)

Das folgende Beispiel zeigt die Antwort auf einen Prompt zum Erstellen einer Express-App. GitHub Copilot Chat bietet eine einfache Texterklärung, eine Strukturansicht mit einer vorgeschlagenen Arbeitsbereichsstruktur und eine Schaltfläche zum Erstellen des neuen Arbeitsbereichs.

Screenshot: Chatansicht mit der Schaltfläche zum Erstellen eines Arbeitsbereichs

GitHub Copilot speichert den Verlauf Ihrer Unterhaltung. Der Verlauf wird verwendet, um die von GitHub Copilot Chat vorgeschlagenen Antworten und Nachfragen zu verbessern.

Verwalten von Codeblöcken in der Chatansicht

Je nach gestellter Frage gibt GitHub Copilot Chat ggf. Quellcode in der Antwort zurück. Quellcode wird als Codeblock angezeigt, und Sie können den Code auf verschiedene Weise verwalten.

Wenn Sie mit dem Mauszeiger auf den Codeblock zeigen, werden Optionen zum Verwalten des Codeblocks angezeigt. Ihre anfänglichen Optionen sind Im Editor anwenden, Beim Cursor einfügen (STRG+EINGABETASTE) und Kopieren.

Screenshot: Codeblock in der Chatansicht

Die Schaltfläche „Weitere Aktionen (...)“ zeigt die Optionen zum In Terminal einfügen (STRG+ALT+EINGABETASTE) und In neue Datei einfügen.

Wenn Copilot Chat erkennt, dass ein Codeblock einen Befehl enthält, können Sie ihn direkt im integrierten Terminal mit In Terminal einfügen (STRG+ALT+EINGABE) ausführen. Diese Option erstellt ein Terminal oder öffnet das aktive Terminal und fügt den Befehlstext ein, sodass Sie ihn direkt ausführen können.

Screenshot: Option zum Einfügen in das Terminal in der Chatansicht

Generieren von Code mit GitHub Copilot Chat unter Verwendung des Inlinechats

Die Inlinechatschnittstelle bietet Zugriff auf leistungsstarke KI-Features, während Sie sich auf Ihren Code konzentrieren. Wenn Sie im Code-Editor arbeiten, können Sie den Inlinechat öffnen, indem Sie STRG+I auf der Tastatur drücken.

Der Inlinechat kann für Folgendes verwendet werden:

  • Zum Stellen von Fragen zu vorhandenem Code
  • Zum Ändern oder Ersetzen von vorhandenem Code
  • Zum Generieren von neuem Code

Erstellen eines neuen Features unter Verwendung des Inlinechats

Die Inlinechatschnittstelle kann verwendet werden, um neue Codefeatures zu entwickeln. Sie können den Inlinechat beispielsweise verwenden, um eine neue Benutzeroberflächenkomponente, einen neuen API-Endpunkt oder eine neue Datenverarbeitungspipeline zu erstellen.

Sie können ein neues Codefeature mithilfe des Inlinechats erstellen, indem Sie die folgenden Schritte ausführen:

  1. Wählen Sie Code im Editor aus.

  2. Öffnen Sie die Inlinechatschnittstelle, indem Sie STRG+I auf der Tastatur drücken.

  3. Geben Sie einen Prompt ein, der das Feature beschreibt, das Sie erstellen möchten.

  4. Prüfen Sie die von Copilot Chat bereitgestellten Vorschläge, und schränken Sie Ihren Prompt bei Bedarf ein.

  5. Wenn Sie mit den Ergebnissen zufrieden sind, akzeptieren Sie einen Vorschlag.

Dieses Beispiel veranschaulicht, wie eine neue Methode mithilfe von Inlinechats erstellt wird:

Screenshot: Inlinechatsitzung zum Erstellen einer Methode

Erstellen regulärer Ausdrücke unter Verwendung des Inlinechats

Reguläre Ausdrücke sind Muster zum Abgleichen von Zeichenkombinationen in Zeichenfolgen. Einige Entwickler finden reguläre Ausdrücke schwierig zu schreiben, da sie komplex und schwer zu verstehen sein können.

Mithilfe der Inlinechatschnittstelle lassen sich reguläre Ausdrücke schnell und präzise generieren. Sie können den Inlinechat beispielsweise verwenden, um reguläre Ausdrücke zum Überprüfen von E-Mail-Adressen, Telefonnummern, Postleitzahlen und anderen Datenmustern zu generieren.

Sie können einen regulären Ausdruck mithilfe des Inlinechats erstellen, indem Sie die folgenden Schritte ausführen:

  1. Wählen Sie Code im Editor aus.

  2. Öffnen Sie die Inlinechatschnittstelle, indem Sie auf der Tastatur STRG + I drücken.

  3. Geben Sie einen Prompt ein, der das zu überprüfende Datenmuster beschreibt.

  4. Prüfen Sie die von Copilot Chat bereitgestellten Vorschläge, und akzeptieren Sie einen Vorschlag, wenn Sie damit zufrieden sind.

Dieses Beispiel veranschaulicht, wie ein regulärer Ausdruck für E-Mail-Adressen mithilfe des Inlinechats erstellt wird:

Screenshot: Inlinechatsitzung zum Erstellen eines regulären Ausdrucks

Es ist immer wichtig, die von GitHub Copilot Chat generierten Antworten zu prüfen.

Copilot Chat schlägt vor, dass der folgende reguläre Ausdruck verwendet werden kann, um E-Mail-Adressen zu überprüfen: ^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$.

Nehmen wir uns kurz Zeit, um den vorgeschlagenen regulären Ausdruck auszuwerten.

^: Dieses Symbol gibt den Anfang einer Zeile an. Die E-Mail-Adresse muss hier beginnen.

[a-zA-Z0-9_.+-]+: Dieser Teil des Ausdrucks entspricht mindestens einem (+) der Zeichen innerhalb der eckigen Klammern ([]). Die Zeichen können Kleinbuchstaben (a-z), Großbuchstaben (A-Z), numerische Zeichen (0-9) oder Sonderzeichen wie Unterstrich (_), Punkt (.), Plus (+) oder Bindestrich (-) sein.

@: Dieser Teil des Ausdrucks ist das „at“-Symbol (@). ein Literalzeichen in der E-Mail-Adresse.

[a-zA-Z0-9-]+: Dieser Teil des Ausdrucks ähnelt dem ersten, steht aber für den Domänennamen der E-Mail-Adresse. Er kann mindestens einen Kleinbuchstaben, Großbuchstaben, ein numerisches Zeichen oder einen Bindestrich (-) enthalten.

\.: Dieser Teil des Ausdrucks ist ein literales Punktzeichen (.). Er trennt den Domänennamen von der Domänenerweiterung.

[a-zA-Z0-9-.]+: Dieser Teil des Ausdrucks entspricht der Domänenerweiterung. Er kann mindestens einen Kleinbuchstaben, Großbuchstaben, ein numerisches Zeichen, einen Bindestrich (-) oder Punkt (.) enthalten.

$: Dieses Symbol gibt das Ende einer Zeile an. Die E-Mail-Adresse muss hier enden.

Insgesamt ist dieser reguläre Ausdruck ein guter Ausgangspunkt für die Überprüfung von E-Mail-Adressen, hat jedoch einige Einschränkungen und deckt möglicherweise nicht alle gültigen E-Mail-Formate ab. Möglicherweise sollten Sie erwägen, umfassendere Muster oder sogar dedizierte E-Mail-Validierungsbibliotheken für kritische Anwendungen zu verwenden.

Zusammenfassung

Mit GitHub Copilot-Erweiterungen können Entwickler Code schneller und mit weniger Fehlern schreiben. Die Erweiterung „GitHub Copilot“ generiert Vorschläge zur Codevervollständigung mithilfe des Codes, den Sie im Editor oder in Ihren Codekommentaren eingeben. Die Erweiterung „GitHub Copilot Chat“ generiert Codevorschläge basierend auf Chatinteraktionen oder intelligenten Aktionen, die Aktionen für ausgewählten Code ausführen.