Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Generierten Code prüfen: das Code-Review

Nach dieser Lektion: Ich kann fremden Code mit einer Prüfliste lesen und seine Fehler benennen.

Lektion, 55 Min.2 BefehleLab für KI-Coding-Agenten: mit opencode Code erklären und reparieren lassen und die Arbeit prüfen

Fremden Code lesen Sie, bevor Sie ihn nutzen

Ein Code-Review heißt, Code zu lesen und zu hinterfragen, den eine andere Person oder ein Assistent geschrieben hat, bevor er in Ihr Projekt kommt. So fangen Sie Fehler ab, die ein Lauf allein nicht zeigt.

Ein Assistent liefert in Sekunden dreißig Zeilen. Das Lesen dauert Minuten. Wer diese Minuten spart, übernimmt Fehler, die er nie gesehen hat.

Am Ende dieser Lektion

Notiz

Ich kann fremden Code mit einer Prüfliste lesen und seine Fehler benennen.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Code-Reviewdas gezielte Lesen von fremdem Code vor der Übernahme
Prüflisteeine feste Liste von Fragen, die Sie jedem Code stellen
Randfalleine ungewöhnliche Eingabe, bei der Code leicht scheiterteine leere Liste
Annahmeetwas, das der Code stillschweigend als wahr voraussetzt
Fundein Fehler oder eine Schwäche, die Sie im Review entdecken

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Lesen Sie zuerst, was jede Zeile tut

Beginnen Sie nicht mit dem Ausführen, sondern mit dem Lesen. Sagen Sie sich zu jeder Zeile, was sie tut. Stocken Sie, ist das schon ein Fund.

Suchen Sie dann die Annahmen: Der Code setzt etwa voraus, dass eine Liste nicht leer ist. Jede Annahme, die nicht geprüft wird, kann brechen.

Die Prüfliste für fremden Code

FrageWozu sie gut istBeispiel für einen Fund
Tut jede Zeile, was ich erwarte?Zeigt falsche RechnungenGanzzahldivision statt Division
Was passiert bei leerer Eingabe?Zeigt RandfälleTeilen durch null
Was passiert bei falscher Eingabe?Zeigt fehlende PrüfungenEin Text statt einer Zahl
Gibt es Namen, die es nicht gibt?Zeigt erfundene FunktionenEine Funktion, die keine Bibliothek hat
Passt es zu meinem Projekt?Zeigt fremde Stile und EinheitenEuro statt Cent

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein Vorschlag, den Sie prüfen sollen

Code: python
# Ein Vorschlag, wie ihn ein Assistent machen könnte. Prüfen Sie ihn wie fremden Code.
def durchschnitt(zahlen):
    summe = 0
    for zahl in zahlen:
        summe = summe + zahl
    return summe // len(zahlen)

print(durchschnitt([2, 3, 4]))
print(durchschnitt([1, 2]))
# Aufgabe: Was erwarten Sie für [1, 2]? Ändern Sie die Rechnung und starten Sie noch einmal.

Was der Lauf zeigt und was er verschweigt

Der Lauf gibt 3 und dann 1 aus. Die erste Zahl stimmt. Die zweite ist falsch, denn der Durchschnitt von 1 und 2 ist 1,5. Ursache ist die Division //, die abrundet.

Außerdem bricht die Funktion bei einer leeren Liste ab, weil len dann 0 ist. Beide Funde kommen aus der Prüfliste, nicht aus dem Lauf allein.

Ein häufiger Fehler

Warnung

Viele glauben, Code sei richtig, wenn er ohne Fehlermeldung läuft. Ein Programm kann laufen und trotzdem falsch rechnen. Prüfen Sie das Ergebnis gegen einen Wert, den Sie selbst ausgerechnet haben.

Im Lab zählen Sie, was ein Review braucht

Ein Review beginnt mit einem Überblick. Im Lab-Projekt suchen Sie die Stellen, an denen Funktionen ihr Ergebnis zurückgeben, und zählen die vorhandenen Prüfungen.

Sie ändern nichts und suchen keinen Fehler. Das Ziel ist ein Plan, welche Zeilen Sie später genauer lesen.

Die Rückgabezeilen auflisten

Befehl
docker exec -w /home/node/project agent grep -n "return" shop.js

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die vorhandenen Prüfungen zählen

Befehl
docker exec -w /home/node/project agent grep -c "assert.strictEqual" shop.test.js

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Was der Überblick Ihnen sagt

Der erste Befehl nennt drei Zeilen mit return: die Zeilen 9, 13 und 17. Jede gehört zu einer der drei Funktionen. Dort beginnt Ihr Review.

Der zweite Befehl zählt 5 Prüfungen. Fragen Sie sich, ob diese fünf alle Funktionen und ihre Randfälle abdecken.

Diese Muster verdienen immer einen zweiten Blick

MusterWarum es verdächtig ist
eval( oder exec(Es führt Text als Code aus
except: ohne FehlerartEs verschluckt jeden Fehler
TODO im CodeEs zeigt unfertige Stellen
Zahlen ohne ErklärungNiemand weiß, woher sie kommen

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Über dieses Lab und seinen Quellcode: Lab für KI-Coding-Agenten: mit opencode Code erklären und reparieren lassen und die Arbeit prüfen

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.