0Pricing
AI Prompt Engineering · Lektion

Prompts zum Debuggen und Refaktorieren

Nutzen Sie LLMs, um Fehler in bestehendem Code zu erkennen und Verbesserungen für Refactoring und Optimierung vorzuschlagen.

Prompts zum Debuggen und Refaktorieren ist eine kostenlose AI Prompt Engineering-Lektion auf CoddyKit. Dies ist Lektion 2 von 3. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des AI Prompt Engineering-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AI Prompt Engineering-Kurs umfasst insgesamt 3 Lektionen.

LLMs für bessere Codequalität

Large Language Models (LLMs) dienen nicht nur zur Generierung neuen Codes, sondern sind auch leistungsstarke Assistenten zur Verbesserung bestehenden Codes. Stellen Sie sie sich als intelligente Code-Reviewer vor!

In dieser Lektion erfahren Sie, wie LLMs Sie dabei unterstützen können:

  • Fehler in Ihrem Code zu erkennen und zu beheben.
  • Verbesserungen für das Refactoring vorzuschlagen.
  • Ihren Code für bessere Performance und Lesbarkeit zu optimieren.

Debugging mit KI: Fehler erkennen

Debugging ist der Prozess, Fehler (Bugs) in Software zu finden und zu beheben. Das kann zeitaufwendig sein.

LLMs können das Debugging deutlich beschleunigen, indem sie:

  • Code auf typische Fehler analysieren.
  • Die genauen Fehlerstellen ermitteln.
  • Konkrete Lösungen und korrigierten Code vorschlagen.

Sehen wir uns ein Beispiel an.

Ihr erster Debugging-Prompt

Stellen Sie sich vor, Sie haben eine Python-Funktion, die Zahlen in einer Liste summieren soll, aber nicht korrekt funktioniert. Sie können ein LLM auffordern, den Fehler zu finden.

Hier ist eine fehlerhafte Python-Funktion. Erkennen Sie den Fehler?

def calculate_sum(numbers):
    total = 0
    for num in numbers:
        total + num # This line is the bug!
    return total

my_list = [1, 2, 3]
print(f"The sum is: {calculate_sum(my_list)}")

Debugging-Erkenntnisse des LLMs

Wenn Sie den vorherigen Code zusammen mit einem Prompt wie „Finden Sie den Fehler in dieser Python-Funktion und erklären Sie, wie er behoben wird“ an ein LLM übergeben hätten, würde es das Problem korrekt erkennen.

Der Fehler besteht darin, dass total + num einen Wert berechnet, ihn aber nicht wieder total zuweist. Hier ist der korrigierte Code:

def calculate_sum(numbers):
    total = 0
    for num in numbers:
        total = total + num # Corrected assignment
    return total

my_list = [1, 2, 3]
print(f"The sum is: {calculate_sum(my_list)}")

Refactoring mit LLMs: Sauberer Code

Refactoring ist der Prozess, bestehenden Code umzustrukturieren, ohne sein äußeres Verhalten zu verändern. Es ist wie das Aufräumen Ihres Zimmers, ohne die Möbel umzustellen!

Die wichtigsten Ziele des Refactorings sind Verbesserungen bei:

  • Lesbarkeit: Der Code wird leichter verständlich.
  • Wartbarkeit: Zukünftige Aktualisierungen und Änderungen werden vereinfacht.
  • Effizienz: Manchmal wird der Code schneller ausgeführt, auch wenn dies nicht das Hauptziel ist.

Prompt für grundlegendes Refactoring

LLMs können Möglichkeiten vorschlagen, Ihren Code kürzer und Pythonic zu gestalten, also entsprechend den Best Practices von Python.

Betrachten Sie diese Funktion, die eine Liste verarbeitet. Sie funktioniert, aber lässt sie sich übersichtlicher gestalten?

def process_positive_squares(data_items):
    result_list = []
    for item in data_items:
        if item > 0:
            squared_val = item * item
            result_list.append(squared_val)
    return result_list

numbers = [1, -2, 3, -4, 5]
print(f"Processed list: {process_positive_squares(numbers)}")

Eine sauberere Version

Mit einem Prompt wie „Refaktorieren Sie diese Python-Funktion für bessere Lesbarkeit und Prägnanz und verwenden Sie dabei eine Listenkomprehension“ könnte ein LLM Folgendes vorschlagen:

Eine Listenkomprehension ist eine kompakte Möglichkeit, aus einer vorhandenen Sequenz eine neue Liste zu erstellen.

def process_positive_squares(data_items):
    # Using a list comprehension for conciseness
    return [item * item for item in data_items if item > 0]

numbers = [1, -2, 3, -4, 5]
print(f"Processed list: {process_positive_squares(numbers)}")

Code mit LLMs optimieren

Neben der Lesbarkeit können LLMs auch Möglichkeiten vorschlagen, Ihren Code für eine bessere Performance zu optimieren. Dabei werden häufig eigene Schleifen durch integrierte Funktionen oder effizientere Algorithmen ersetzt.

Hier ist eine Funktion, die das erste Vorkommen eines Zeichens findet. Sie funktioniert, aber in Python gibt es dafür eine effizientere Möglichkeit.

def find_char_manually(text, char):
    for i in range(len(text)):
        if text[i] == char:
            return i
    return -1

my_string = "hello world"
print(f"'o' found at index: {find_char_manually(my_string, 'o')}")

Integrierte Funktionen nutzen

Ein guter Prompt wäre hier: „Wie kann ich diese Python-Funktion zum Finden des ersten Vorkommens eines Zeichens optimieren?“

Das LLM würde wahrscheinlich auf die hochoptimierten integrierten String-Methoden von Python wie .find() hinweisen.

def find_char_optimized(text, char):
    # Using the built-in string find method, which is highly optimized
    return text.find(char)

my_string = "hello world"
print(f"'o' found at index: {find_char_optimized(my_string, 'o')}")

Kurztest

Das Verständnis des Unterschieds zwischen Debugging und Refactoring ist entscheidend für eine effektive Codeverbesserung.

Zusammenfassung: Ihr KI-Codeassistent

In dieser Lektion haben wir entdeckt, wie wertvoll LLMs für die Verbesserung Ihrer Codequalität sein können.

  • Debugging: LLMs können Fehler schnell erkennen, erklären und Lösungen vorschlagen, wodurch Sie Zeit sparen.
  • Refactoring: LLMs helfen, Code-Struktur, Lesbarkeit und Wartbarkeit zu verbessern, häufig indem sie prägnantere oder Pythonic-Ansätze zum Schreiben von Code vorschlagen.
  • Optimierung: Sie können außerdem Performance-Engpässe aufzeigen und effizientere Ansätze vorschlagen.

Denken Sie daran, klare und spezifische Prompts zu formulieren, um die besten Ergebnisse von Ihrem KI-Codeassistenten zu erhalten!

Häufig gestellte Fragen

Ist die Lektion „Prompts zum Debuggen und Refaktorieren“ kostenlos?

Ja — der vollständige Text von „Prompts zum Debuggen und Refaktorieren“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AI Prompt Engineering-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AI Prompt Engineering-Kurs umfasst insgesamt 3 Lektionen.

Was lerne ich in „Prompts zum Debuggen und Refaktorieren“?

Nutzen Sie LLMs, um Fehler in bestehendem Code zu erkennen und Verbesserungen für Refactoring und Optimierung vorzuschlagen. Du übst AI Prompt Engineering mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um AI Prompt Engineering zu starten?

Keine Vorkenntnisse erforderlich. AI Prompt Engineering auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 3.

Wie lange dauert die Lektion „Prompts zum Debuggen und Refaktorieren“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser AI Prompt Engineering-Lektion Code schreiben und ausführen?

Ja. Jede AI Prompt Engineering-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Code mit LLMs generieren
  2. Prompts zum Debuggen und Refaktorieren
  3. LLMs in IDEs integrieren
← Zurück zu AI Prompt Engineering