Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

🐙 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

FunktionWas passiertWann hilfreich?
Inline-VorschlĂ€geCopilot tippt mit dir mitImmer – der Kernmodus
Copilot ChatChatfenster direkt im EditorFĂŒr ErklĂ€rungen & Refactoring
Copilot in der KommandozeileTerminalbefehle vorschlagenWenn du nicht weißt, wie ein Befehl heißt
Copilot EditsMehrere Dateien gleichzeitig Ă€ndernFĂŒ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 CopilotKI-Agent (z. B. Antigravity)
TypAssistentAgent
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
InstallationPlugin im EditorEigene 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ĂŒrzelWas passiert
TabVorschlag annehmen
EscVorschlag ablehnen
Alt + ]NĂ€chster Vorschlag
Alt + [Vorheriger Vorschlag
Ctrl + EnterAlle VorschlÀge anzeigen
Ctrl + ICopilot Chat öffnen (Inline)
Ctrl + Shift + ICopilot Chat in Seitenleiste

💡 Copilot richtig einsetzen – Best Practices

  1. Kommentare als Anweisungen nutzen: Schreibe erst, was die Funktion tun soll, dann lass Copilot vorschlagen.
  2. VorschlĂ€ge hinterfragen: Verstehe immer, was Copilot vorschlĂ€gt – ĂŒbernimm keinen Code blind.
  3. Namen als Hinweise: Gute Variablen- und Funktionsnamen fĂŒhren zu besseren VorschlĂ€gen.
  4. FĂŒr AnfĂ€nger: Langsamer werden: Tippe bewusst langsam und lies jeden Vorschlag durch.
  5. 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):

  1. Erweiterungen öffnen (Ctrl+Shift+X)
  2. „GitHub Copilot“ suchen
  3. 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)

  1. Hallo, Welt! – Lass Copilot die klassische BegrĂŒĂŸung vorschlagen und experimentiere mit verschiedenen Ausgabeformaten.

  2. Taschenrechner – Schreibe Kommentare fĂŒr Addition, Subtraktion, Multiplikation und Division. Lass Copilot die Funktionen vorschlagen.

  3. Temperatumrechner – Celsius ↔ Fahrenheit ↔ Kelvin. Schreibe je einen Kommentar pro Umrechnung.

  4. Geradzahlen-PrĂŒfer – Kommentiere: „PrĂŒfe ob eine Zahl gerade ist“ – was schlĂ€gt Copilot vor?

  5. Fibonacci-Folge – Lass Copilot eine rekursive und eine iterative Variante vorschlagen. Vergleiche beide.

  6. Buchstaben zĂ€hlen – ZĂ€hle, wie oft ein bestimmter Buchstabe in einem String vorkommt.

  7. Palindrom-PrĂŒfer – Schreibe den Kommentar, lass Copilot prĂŒfen ob ein Wort rĂŒckwĂ€rts gleich ist.

  8. Zahl erraten – Copilot schlĂ€gt eine Zufallszahl und eine Eingabeschleife vor. Du verstehst, warum.

  9. Primzahl-Checker – Kommentiere die Logik schrittweise, beobachte Copilots VorschlĂ€ge.

  10. Wörter zĂ€hlen – ZĂ€hle die Wörter in einem eingegebenen Satz.


🟡 Mittlere Projekte (11–25)

  1. Einkaufsliste – Eine Vektor-basierte Liste, die du ergĂ€nzen und ausgeben kannst.

  2. Notenrechner – Gib Noten ein, berechne den Durchschnitt und das PrĂ€dikat.

  3. Passwort-StĂ€rke-Checker – PrĂŒfe LĂ€nge, Sonderzeichen und Zahlen in einem Passwort.

  4. Wechselgeldrechner – Berechne das optimale Wechselgeld (Scheine und MĂŒnzen).

  5. WĂŒrfelspiel – Simuliere das WĂŒrfeln mit verschiedenen WĂŒrfeltypen (W6, W12, W20).

  6. BinĂ€re Suche – Implementiere mit Copilots Hilfe eine binĂ€re Suche in einem sortierten Array.

  7. Stack (Stapel) – Baue einen eigenen Stack mit push, pop und peek.

  8. WortverschlĂŒsselung – Einfache Caesar-Chiffre: Buchstaben um N Stellen verschieben.

  9. Einheitenrechner – Kilometer ↔ Meilen, Kilogramm ↔ Pfund, Liter ↔ Gallonen.

  10. Körper-Maß-Index – Berechne BMI und zeige Kategorien an.

  11. Countdown-Timer – ZĂ€hle von einer eingegebenen Zahl rĂŒckwĂ€rts bis 0.

  12. Vokabeln abfragen – Speichere Deutsch-Englisch-Paare und prĂŒfe das Wissen.

  13. Lottozahlen – Ziehe 6 zufĂ€llige Zahlen aus 1–49, keine Duplikate.

  14. Textstatistik – ZĂ€hle Buchstaben, Wörter, SĂ€tze und berechne durchschnittliche WortlĂ€nge.

  15. Tic-Tac-Toe – Zwei Spieler im Terminal. Copilot hilft mit der Siegbedingung.


🔮 Fortgeschrittene Projekte (26–40)

  1. Taschenrechner mit Fehlerbehandlung – Erweitere Projekt 2 um Result und sinnvolle Fehlermeldungen.

  2. Kontaktbuch – Speichere Namen und Telefonnummern in einer HashMap.

  3. Notiz-App – FĂŒge Notizen hinzu, lösche sie, zeige alle an – alles im Terminal.

  4. Budgetverwaltung – Einnahmen und Ausgaben buchen, Kontostand anzeigen.

  5. Wortfrequenz-Analyse – Welches Wort kommt in einem Text am hĂ€ufigsten vor?

  6. Morse-Code – Konvertiere Text in Morsecode und zurĂŒck.

  7. Bruchrechnung – BrĂŒche addieren, subtrahieren, kĂŒrzen – mit eigenem Bruch-Struct.

  8. Zahlenraten mit KI-Tipp – Die KI (simpler Algorithmus) rĂ€t die Zahl des Nutzers durch Fragen.

  9. Matrix-Rechner – Addiere und multipliziere 2×2-Matrizen.

  10. Anagramm-PrĂŒfer – Sind zwei Wörter Anagramme voneinander?

  11. Roman-Zahlen-Konverter – Arabische Zahlen in römische und zurĂŒck.

  12. Bankkonto – Ein Struct mit Einzahlen, Abheben und Kontostand – mit Fehlern bei Überziehung.

  13. Textadventure – Eine einfache Welt mit RĂ€umen und GegenstĂ€nden – Copilot hilft bei der Struktur.

  14. Zahlenformatierung – Zeige Zahlen mit Tausender-Trennzeichen an (1.000.000).

  15. Stoppuhr – Miss, wie lange der Nutzer eine Eingabe benötigt.


⚡ Herausforderungsprojekte (41–50)

  1. VollstĂ€ndiger Student-Verwalter – Struct fĂŒr Studenten, Noten speichern, Durchschnitt berechnen, Rangfolge ausgeben.

  2. Einfache Datenbank im Speicher – Tabellen simulieren: Zeilen einfĂŒgen, suchen, löschen.

  3. Taschenrechner mit Operator-Vorrang – Klammern und Punkt-vor-Strich korrekt berechnen.

  4. Schiffe versenken – Terminal-Spiel fĂŒr zwei Spieler mit Spielfeld-Ausgabe.

  5. CSV-Parser – Lies eine CSV-Datei zeilenweise und gib strukturierte Daten aus.

  6. Passwort-Generator – Erzeuge sichere Passwörter mit einstellbarer LĂ€nge und Zeichenvorrat.

  7. Farbmischer – RGB-Farben mischen, HEX-Code ausgeben.

  8. RegulĂ€re AusdrĂŒcke – Validiere E-Mail-Adressen oder Telefonnummern mit einem Pattern.

  9. Mehrstufige MenĂŒ-App – Eine CLI-App mit HauptmenĂŒ, UntermenĂŒs und Navigation.

  10. Eigenes Assembler-Spielzeug – Ein Mini-Interpreter, der einfache „Befehle“ wie ADD 5 3 ausfĂŒhrt.


💡 Zusammenfassung

KonzeptBedeutung
Inline-VorschlĂ€geCopilots Kernfunktion – er tippt mit
Kommentar als AnweisungPrÀzise Kommentare = bessere VorschlÀge
Tab-EntscheidungDu entscheidest immer, ob du annimmst
Copilot ChatFĂŒr ErklĂ€rungen und VerstĂ€ndnisfragen
VorschlĂ€ge verstehenNie 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.