Fähigkeiten debugging-strategies
📦

debugging-strategies

Sicher

Systematische Debugging-Strategien anwenden

Das Debuggen komplexer Software-Probleme fühlt sich oft zufällig und frustrierend an. Diese Fähigkeit bietet systematische Debugging-Techniken, Profiling-Tools und Ursachenanalysemethoden, die das Troubleshooting in einen methodischen Prozess verwandeln.

Unterstützt: Claude Codex Code(CC)
📊 69 Angemessen
1

Die Skill-ZIP herunterladen

2

In Claude hochladen

Gehe zu Einstellungen → Fähigkeiten → Skills → Skill hochladen

3

Einschalten und loslegen

Teste es

Verwendung von "debugging-strategies". My Node.js API returns 500 errors intermittently. The error says 'Cannot read property of undefined' but I cannot find where this happens.

Erwartetes Ergebnis:

Lass mich systematisches Debugging anwenden, um dieses undefinierte Eigenschafts-Problem zu finden.

## Schritt 1: Reproduzieren und Beobachten
- Wann tritt der Fehler auf? Immer oder zufällig?
- Welcher API-Endpunkt löst ihn aus?
- Welche Request-Parameter werden gesendet?

## Schritt 2: Informationen sammeln
1. Strategisches Logging vor dem wahrscheinlichen Absturzpunkt hinzufügen:
```javascript
console.log('Order data:', JSON.stringify(order, null, 2));
```
2. Überprüfen, welche Eigenschaft undefiniert sein könnte:
```javascript
console.log('Items:', order?.items);
console.log('User:', order?.user?.name);
```

## Schritt 3: Hypothese
Hypothese: Der Fehler tritt wahrscheinlich auf, wenn:
- order.items für bestimmte Request-Typen undefiniert ist
- order.user für Gastbenutzer null ist

## Schritt 4: Testen und Überprüfen
Null-Prüfungen hinzufügen und mit Beispiel-Requests verifizieren:
```javascript
const items = order?.items ?? [];
const userName = order?.user?.name ?? 'Guest';
```

Möchtest du, dass ich dir helfe, diesen Fix zu implementieren?

Verwendung von "debugging-strategies". Help me debug a memory leak in my React application.

Erwartetes Ergebnis:

Lass mich dich durch das systematische Debuggen eines React-Speicherlecks führen.

## Reproduktionsphase
1. Chrome DevTools > Memory-Tab öffnen
2. Einen Heap-Snapshot machen (vorher)
3. Die verdächtige Aktion 10-20 Mal durchführen
4. Einen weiteren Snapshot machen (nachher)
5. Snapshots vergleichen, um zurückgehaltene Objekte zu identifizieren

## Häufige React-Speicherleck-Muster
1. Nicht abgemeldete Event-Listener
2. Timer (setInterval), die nicht in useEffect-Cleanup gelöscht werden
3. Closures, die Referenzen auf Komponentenbereich halten
4. Unbegrenzt wachsende globale Caches

## Schnelle Debugging-Schritte
```javascript
useEffect(() => {
const timer = setInterval(() => {
// ...
}, 1000);

// Cleanup-Funktion - KRITISCH zur Verhinderung von Leaks
return () => {
clearInterval(timer);
// Alle Abonnements entfernen
};
}, []);
```

Welche Symptome beobachtest du? Hoher Speicher in DevTools oder tatsächliche Abstürze?

Sicherheitsaudit

Sicher
v5 • 1/21/2026

Static analysis detected 54 potential issues, all confirmed as false positives. The 'scripts' patterns are Go import statements in code examples. 'External_commands' are markdown backticks used for code formatting. 'Weak cryptographic algorithm' flags are triggered by Go standard library package names (crypto/pprof). 'Network' URLs are GitHub source URLs and localhost debugging endpoints. All findings are legitimate documentation content with no security concerns.

2
Gescannte Dateien
1,137
Analysierte Zeilen
0
befunde
5
Gesamtzahl Audits
Keine Sicherheitsprobleme gefunden
Auditiert von: claude Audit-Verlauf anzeigen →

Qualitätsbewertung

38
Architektur
100
Wartbarkeit
87
Inhalt
21
Community
100
Sicherheit
87
Spezifikationskonformität

Was du bauen kannst

Hartnäckige Produktionsfehler beheben

Systematische Debugging-Techniken anwenden, um schwer reproduzierbare Probleme in Produktionsumgebungen mit Logging, Stack-Trace-Analyse und differenziellem Debugging aufzuspüren.

Langsame Anwendungsperformance optimieren

Profiling-Tools und -Techniken verwenden, um Performance-Engpässe, Speicherlecks und ineffiziente Codemuster in JavaScript-, Python- und Go-Anwendungen zu identifizieren.

Strukturierte Debugging-Ansätze erlernen

Die wissenschaftliche Methode für Debugging, Rubber-Duck-Debugging und systematische Problemisolierung meistern, um bei jedem Code-Problem effektiver zu troubleshooten.

Probiere diese Prompts

Einen spezifischen Fehler debuggen
Ich sehe diesen Fehler in meiner Anwendung: [insert error message and stack trace]. Wende systematische Debugging-Techniken an, um mir zu helfen, die Ursache zu identifizieren. Gehe die wissenschaftliche Methode durch: Beobachten, Hypothese aufstellen, Experimentieren, Analysieren.
Performance-Engpass profilen
Meine [application type] Anwendung läuft langsam. Hilf mir, Profiling-Tools zu verwenden, um den Engpass zu identifizieren. Schließe Schritt-für-Schritt-Anleitungen zur Verwendung von [Chrome DevTools / cProfile / pprof] ein, um zu finden, wo die Zeit verbraucht wird.
Race Condition debuggen
Ich habe einen intermittierenden Fehler, der nur manchmal auftritt und mit Async-Operationen zusammenzuhängen scheint. Führe mich durch das Debuggen von Race Conditions mit Trace-Logging und Timing-Analyse.
Git bisect für Regression verwenden
Ein Fehler ist zwischen der funktionierenden Version [version A] und der aktuellen Version [version B] aufgetreten. Führe mich durch die Verwendung von git bisect, um den genauen Commit zu finden, der die Regression eingeführt hat.

Bewährte Verfahren

  • Reproduziere den Fehler konsistent, bevor du Versuche unternimmst, ihn zu beheben. Ohne konsistente Reproduktion kannst du deine Lösung nicht verifizieren.
  • Isoliere das Problem, indem du nicht zusammenhängenden Code entfernst. Erstelle einen minimalen Reproduktionsfall, der das Problem demonstriert.
  • Verwende den Debugger, nicht nur console.log-Anweisungen. Breakpoints ermöglichen es dir, den Programmstatus an jedem Punkt zu überprüfen.

Vermeiden

  • Mehrere Änderungen gleichzeitig vornehmen. Ändere jeweils nur eine Sache, um zu verstehen, was den Fehler tatsächlich behebt.
  • Fehlermeldungen ignorieren oder nicht den vollständigen Stack-Trace lesen. Die Fehlermeldung und der Stack-Trace enthalten wertvolle Hinweise.
  • Annehmen, dass der Fehler im Code eines anderen liegt. Die meisten Fehler befinden sich in deinen eigenen kürzlichen Änderungen, nicht in Drittanbieter-Bibliotheken.

Häufig gestellte Fragen

Was ist die wissenschaftliche Methode für Debugging?
Die wissenschaftliche Methode für Debugging umfasst: (1) Das tatsächliche Verhalten und den Fehler beobachten, (2) Eine Hypothese über die Ursache formulieren, (3) Ein Experiment entwerfen und durchführen, um die Hypothese zu testen, (4) Analysieren, ob die Ergebnisse die Theorie bestätigen oder widerlegen, (5) Mit einer neuen Hypothese wiederholen, bis du die Grundursache findest.
Wie debugge ich Produktionsprobleme sicher?
Produktionscode niemals direkt modifizieren. Stattdessen: (1) Logging hinzufügen, um mehr Informationen zu erfassen, (2) Feature Flags verwenden, um Fixes zu testen, (3) Zuerst in Staging bereitstellen, um zu verifizieren, (4) Error-Tracking-Tools wie Sentry verwenden, (5) Mit anonymisierten Produktionsdaten lokal arbeiten.
Was ist binäre Suche beim Debugging?
Binäre Suche beim Debugging reduziert den problematischen Code, indem der Suchraum wiederholt halbiert wird. Kommentiere die Hälfte des Codes aus, um zu sehen, ob der Fehler noch auftritt. Weiter eingrenzen, bis du die genaue Zeile oder den Abschnitt identifizierst, die das Problem verursachen.
Wie debugge ich intermittierende Fehler?
Intermittierende Fehler erfordern umfangreiches Logging und Zustandserfassung. Detaillierte Logs hinzufügen, die Timing, Eingabedaten und Zustandsübergänge zeigen. Nach Mustern suchen, wann der Fehler auftritt. Auf Race Conditions in Async-Code und Timing-Abhängigkeiten prüfen.
Was ist Rubber-Duck-Debugging?
Rubber-Duck-Debugging ist das Erklären deines Codes und Problems laut, Zeile für Zeile, an eine Gummiente oder einen Kollegen. Das Artikulieren des Problems zeigt oft die Lösung. Es zwingt dich, langsamer zu werden und jeden Schritt durchzudenken.
Wie verwende ich git bisect, um zu finden, wann ein Fehler eingeführt wurde?
Git bisect automatisiert die Suche nach dem Commit, das einen Fehler eingeführt hat. Führe 'git bisect start' aus, markiere einen bekannten funktionierenden Commit mit 'git bisect good <commit>', markiere einen bekannten fehlerhaften Commit mit 'git bisect bad <commit>'. Git checked Commits in der Mitte aus, die du testen kannst. Markiere jeden als 'good' oder 'bad', bis es den genauen Commit identifiziert.

Entwicklerdetails

Dateistruktur

📄 SKILL.md