đ GitHub Copilot â Der klassische KI-Assistent
Code-VervollstĂ€ndigung der nĂ€chsten Generation â direkt im Editor.
GitHub Copilot war einer der ersten KI-Assistenten, die direkt im Code-Editor eingesetzt wurden. Er gilt als der âklassische Assistentâ: Er schlĂ€gt Code vor, vervollstĂ€ndigt Funktionen und erklĂ€rt â aber er handelt nicht selbststĂ€ndig.
In dieser Lektion lernen wir, wie GitHub Copilot funktioniert, wo er sich von modernen KI-Agenten unterscheidet und wie wir ihn sinnvoll beim Rust-Lernen einsetzen können.
Wichtig fĂŒr AnfĂ€nger: Copilot ist ein Assistent, kein Agent. Er antwortet auf das, was du gerade tippst â er plant nicht, handelt nicht und liest keine Konfigurationsdateien. Das macht ihn einfacher â und in manchen Situationen auch nĂŒtzlicher.
đ§ Theorie: Was ist GitHub Copilot?
GitHub Copilot ist ein KI-Assistent von GitHub und OpenAI. Er wurde auf Milliarden von Zeilen öffentlichen Codes trainiert und lÀuft als Plugin in deinem Editor.
Wie funktioniert Copilot?
Copilot analysiert Kontext in Echtzeit:
- Den Code, den du gerade schreibst
- Die Datei, in der du arbeitest
- Den Kommentar direkt ĂŒber dem Cursor
- Den Dateinamen und die Programmiersprache
Daraus generiert er VorschlĂ€ge â einzelne Zeilen, ganze Funktionen oder sogar vollstĂ€ndige Klassen.
Die vier Copilot-Funktionen im Ăberblick
| Funktion | Was passiert | Wann hilfreich? |
|---|---|---|
| Inline-VorschlĂ€ge | Copilot tippt mit dir mit | Immer â der Kernmodus |
| Copilot Chat | Chatfenster direkt im Editor | FĂŒr ErklĂ€rungen & Refactoring |
| Copilot in der Kommandozeile | Terminalbefehle vorschlagen | Wenn du nicht weiĂt, wie ein Befehl heiĂt |
| Copilot Edits | Mehrere Dateien gleichzeitig Ă€ndern | FĂŒr gröĂere Umstrukturierungen |
đ§ Wie Copilot denkt â ein Beispiel
Du schreibst in Rust:
#![allow(unused)]
fn main() {
// Berechne den Durchschnitt einer Liste von Zahlen
fn
}
Copilot sieht deinen Kommentar und schlÀgt sofort vor:
#![allow(unused)]
fn main() {
fn berechne_durchschnitt(zahlen: &[f64]) -> f64 {
let summe: f64 = zahlen.iter().sum();
summe / zahlen.len() as f64
}
}
Das ist das Prinzip: Kommentare sind deine Anweisungen. Je prÀziser der Kommentar, desto besser der Vorschlag.
đ Copilot vs. KI-Agent â Was ist der Unterschied?
| GitHub Copilot | KI-Agent (z. B. Antigravity) | |
|---|---|---|
| Typ | Assistent | Agent |
| Handelt selbststĂ€ndig | â Nein | â Ja |
| Dateien lesen/schreiben | â Nur die aktuelle Datei | â Projektweite Dateien |
| Terminal ausfĂŒhren | â Nein | â Ja |
| Erinnert sich | â Nur innerhalb der Sitzung | â Ăber AGENTS.md und Skills |
| Planungsmodus | â Nein | â Ja |
| Vorschlags-Modus | â Inline, sofort | â Auf Anfrage |
| Installation | Plugin im Editor | Eigene App / CLI |
Die wichtigste Erkenntnis:
đ€ Copilot ist perfekt beim aktiven Tippen â er schlĂ€gt vor, du entscheidest.
đ€ Ein Agent ist perfekt fĂŒr gröĂere Aufgaben â er plant und handelt.
âšïž Copilot-Shortcuts (in VS Code)
| TastenkĂŒrzel | Was passiert |
|---|---|
Tab | Vorschlag annehmen |
Esc | Vorschlag ablehnen |
Alt + ] | NĂ€chster Vorschlag |
Alt + [ | Vorheriger Vorschlag |
Ctrl + Enter | Alle VorschlÀge anzeigen |
Ctrl + I | Copilot Chat öffnen (Inline) |
Ctrl + Shift + I | Copilot Chat in Seitenleiste |
đĄ Copilot richtig einsetzen â Best Practices
- Kommentare als Anweisungen nutzen: Schreibe erst, was die Funktion tun soll, dann lass Copilot vorschlagen.
- VorschlĂ€ge hinterfragen: Verstehe immer, was Copilot vorschlĂ€gt â ĂŒbernimm keinen Code blind.
- Namen als Hinweise: Gute Variablen- und Funktionsnamen fĂŒhren zu besseren VorschlĂ€gen.
- FĂŒr AnfĂ€nger: Langsamer werden: Tippe bewusst langsam und lies jeden Vorschlag durch.
- Copilot Chat fĂŒr ErklĂ€rungen: Markiere fremden Code und frage âWas macht dieser Code?â
đ ïž Praxis-Aufgaben
Aufgabe A: Copilot kennenlernen
Installiere das GitHub Copilot Plugin in VS Code (oder Antigravity IDE):
- Erweiterungen öffnen (
Ctrl+Shift+X) - âGitHub Copilotâ suchen
- Installieren und mit GitHub-Konto anmelden
Teste dann: Schreibe einen Kommentar auf Deutsch und lass Copilot eine Funktion vorschlagen.
#![allow(unused)]
fn main() {
// Gibt eine BegrĂŒĂungsnachricht mit dem ĂŒbergebenen Namen zurĂŒck
fn
}
Aufgabe B: VorschlÀge bewusst lesen
Lass Copilot einen Vorschlag machen â aber bevor du Tab drĂŒckst:
- Lies den gesamten Code durch
- Verstehe jede Zeile
- Frage dich: WĂŒrde ich das so schreiben?
Erst dann: annehmen oder ablehnen.
Aufgabe C: Copilot Chat nutzen
Markiere diesen Code im Editor:
#![allow(unused)]
fn main() {
let ergebnis: Result<i32, _> = "42abc".parse();
}
Ăffne den Copilot Chat (Ctrl+I) und frage:
ErklÀre mir, was hier passiert und warum Rust Result verwendet.
đ 50 Rust-ProjektvorschlĂ€ge fĂŒr GitHub Copilot
Diese Projekte sind speziell dafĂŒr gedacht, mit GitHub Copilot als klassischem Assistenten zu arbeiten. Schreibe immer erst einen Kommentar, der beschreibt, was du willst â dann lass Copilot vorschlagen und entscheide selbst.
đŠ Lernregel: Copilot darf vorschlagen â aber du musst jede Zeile verstehen.
Nimm keinen Vorschlag an, den du nicht erklÀren könntest!
đą Einstiegsprojekte (1â10)
-
Hallo, Welt! â Lass Copilot die klassische BegrĂŒĂung vorschlagen und experimentiere mit verschiedenen Ausgabeformaten.
-
Taschenrechner â Schreibe Kommentare fĂŒr Addition, Subtraktion, Multiplikation und Division. Lass Copilot die Funktionen vorschlagen.
-
Temperatumrechner â Celsius â Fahrenheit â Kelvin. Schreibe je einen Kommentar pro Umrechnung.
-
Geradzahlen-PrĂŒfer â Kommentiere: âPrĂŒfe ob eine Zahl gerade istâ â was schlĂ€gt Copilot vor?
-
Fibonacci-Folge â Lass Copilot eine rekursive und eine iterative Variante vorschlagen. Vergleiche beide.
-
Buchstaben zĂ€hlen â ZĂ€hle, wie oft ein bestimmter Buchstabe in einem String vorkommt.
-
Palindrom-PrĂŒfer â Schreibe den Kommentar, lass Copilot prĂŒfen ob ein Wort rĂŒckwĂ€rts gleich ist.
-
Zahl erraten â Copilot schlĂ€gt eine Zufallszahl und eine Eingabeschleife vor. Du verstehst, warum.
-
Primzahl-Checker â Kommentiere die Logik schrittweise, beobachte Copilots VorschlĂ€ge.
-
Wörter zĂ€hlen â ZĂ€hle die Wörter in einem eingegebenen Satz.
đĄ Mittlere Projekte (11â25)
-
Einkaufsliste â Eine Vektor-basierte Liste, die du ergĂ€nzen und ausgeben kannst.
-
Notenrechner â Gib Noten ein, berechne den Durchschnitt und das PrĂ€dikat.
-
Passwort-StĂ€rke-Checker â PrĂŒfe LĂ€nge, Sonderzeichen und Zahlen in einem Passwort.
-
Wechselgeldrechner â Berechne das optimale Wechselgeld (Scheine und MĂŒnzen).
-
WĂŒrfelspiel â Simuliere das WĂŒrfeln mit verschiedenen WĂŒrfeltypen (W6, W12, W20).
-
BinĂ€re Suche â Implementiere mit Copilots Hilfe eine binĂ€re Suche in einem sortierten Array.
-
Stack (Stapel) â Baue einen eigenen Stack mit
push,popundpeek. -
WortverschlĂŒsselung â Einfache Caesar-Chiffre: Buchstaben um N Stellen verschieben.
-
Einheitenrechner â Kilometer â Meilen, Kilogramm â Pfund, Liter â Gallonen.
-
Körper-MaĂ-Index â Berechne BMI und zeige Kategorien an.
-
Countdown-Timer â ZĂ€hle von einer eingegebenen Zahl rĂŒckwĂ€rts bis 0.
-
Vokabeln abfragen â Speichere Deutsch-Englisch-Paare und prĂŒfe das Wissen.
-
Lottozahlen â Ziehe 6 zufĂ€llige Zahlen aus 1â49, keine Duplikate.
-
Textstatistik â ZĂ€hle Buchstaben, Wörter, SĂ€tze und berechne durchschnittliche WortlĂ€nge.
-
Tic-Tac-Toe â Zwei Spieler im Terminal. Copilot hilft mit der Siegbedingung.
đŽ Fortgeschrittene Projekte (26â40)
-
Taschenrechner mit Fehlerbehandlung â Erweitere Projekt 2 um
Resultund sinnvolle Fehlermeldungen. -
Kontaktbuch â Speichere Namen und Telefonnummern in einer
HashMap. -
Notiz-App â FĂŒge Notizen hinzu, lösche sie, zeige alle an â alles im Terminal.
-
Budgetverwaltung â Einnahmen und Ausgaben buchen, Kontostand anzeigen.
-
Wortfrequenz-Analyse â Welches Wort kommt in einem Text am hĂ€ufigsten vor?
-
Morse-Code â Konvertiere Text in Morsecode und zurĂŒck.
-
Bruchrechnung â BrĂŒche addieren, subtrahieren, kĂŒrzen â mit eigenem Bruch-Struct.
-
Zahlenraten mit KI-Tipp â Die KI (simpler Algorithmus) rĂ€t die Zahl des Nutzers durch Fragen.
-
Matrix-Rechner â Addiere und multipliziere 2Ă2-Matrizen.
-
Anagramm-PrĂŒfer â Sind zwei Wörter Anagramme voneinander?
-
Roman-Zahlen-Konverter â Arabische Zahlen in römische und zurĂŒck.
-
Bankkonto â Ein Struct mit Einzahlen, Abheben und Kontostand â mit Fehlern bei Ăberziehung.
-
Textadventure â Eine einfache Welt mit RĂ€umen und GegenstĂ€nden â Copilot hilft bei der Struktur.
-
Zahlenformatierung â Zeige Zahlen mit Tausender-Trennzeichen an (1.000.000).
-
Stoppuhr â Miss, wie lange der Nutzer eine Eingabe benötigt.
⥠Herausforderungsprojekte (41â50)
-
VollstĂ€ndiger Student-Verwalter â Struct fĂŒr Studenten, Noten speichern, Durchschnitt berechnen, Rangfolge ausgeben.
-
Einfache Datenbank im Speicher â Tabellen simulieren: Zeilen einfĂŒgen, suchen, löschen.
-
Taschenrechner mit Operator-Vorrang â Klammern und Punkt-vor-Strich korrekt berechnen.
-
Schiffe versenken â Terminal-Spiel fĂŒr zwei Spieler mit Spielfeld-Ausgabe.
-
CSV-Parser â Lies eine CSV-Datei zeilenweise und gib strukturierte Daten aus.
-
Passwort-Generator â Erzeuge sichere Passwörter mit einstellbarer LĂ€nge und Zeichenvorrat.
-
Farbmischer â RGB-Farben mischen, HEX-Code ausgeben.
-
RegulĂ€re AusdrĂŒcke â Validiere E-Mail-Adressen oder Telefonnummern mit einem Pattern.
-
Mehrstufige MenĂŒ-App â Eine CLI-App mit HauptmenĂŒ, UntermenĂŒs und Navigation.
-
Eigenes Assembler-Spielzeug â Ein Mini-Interpreter, der einfache âBefehleâ wie
ADD 5 3ausfĂŒhrt.
đĄ Zusammenfassung
| Konzept | Bedeutung |
|---|---|
| Inline-VorschlĂ€ge | Copilots Kernfunktion â er tippt mit |
| Kommentar als Anweisung | PrÀzise Kommentare = bessere VorschlÀge |
| Tab-Entscheidung | Du entscheidest immer, ob du annimmst |
| Copilot Chat | FĂŒr ErklĂ€rungen und VerstĂ€ndnisfragen |
| VorschlĂ€ge verstehen | Nie blind annehmen â immer lesen! |
đŠ Merke: Copilot ist kein Autopilot. Er schlĂ€gt vor â du programmierst.
Wer jeden Vorschlag versteht, lernt schneller als jemand, der blind annimmt.
đ WeiterfĂŒhrende Links
- GitHub Copilot â Offizielle Seite
- Copilot in VS Code â Dokumentation
- Copilot Chat â Chat-Funktion erklĂ€rt
- Rust-Buch â Die offizielle Rust-Referenz