Funktionen

Bob-Tipps

Bob-Tipps erkennt Codequalitätsprobleme in Echtzeit und liefert KI-gestützte Refactoring-Vorschläge für komplexe Funktionen. Reduziere technische Schulden direkt beim Coden.

Warum Bob-Tipps verwenden?

  • Echtzeit-Codeanalyse: Erkennt automatisch Qualitätsprobleme, während du Code schreibst – ohne manuelle Scans.
  • Probleme frühzeitig erkennen: Identifiziere problematische Funktionen während der Entwicklung, vor dem Code-Review.
  • Technische Schulden reduzieren: Behebe Komplexitäts- und Wartbarkeitsprobleme, sobald sie entstehen.
  • Lesbarkeit verbessern: Erhalte konkrete Vorschläge zur Vereinfachung komplexer Logik.
  • Testbarkeit verbessern: Reduziere tief verschachtelte Logik und übermäßige Verzweigungen, die das Testen erschweren.

So funktioniert es

Bob-Tipps führt eine kontinuierliche statische Analyse aller geöffneten Dateien in deinem Editor durch und berechnet Codequalitätsmetriken auf Funktionsebene:

Analysierte Metriken:

  • Zyklomatische Komplexität: Misst die Anzahl unabhängiger Pfade durch deinen Code. Ein Wert von 10 oder höher gilt als hohe Komplexität.
  • Wartbarkeitsindex: Bewertet, wie einfach dein Code zu lesen, zu testen und zu erweitern ist. Ein Wert von 70 oder niedriger gilt als geringe Wartbarkeit.

Automatische Erkennung:

Wenn eine Funktion Qualitätsschwellenwerte überschreitet, führt Bob automatisch folgende Aktionen aus:

  1. Markiert die Funktion mit einer lila Unterstreichung im Editor.
  2. Fügt den Befund dem Bob-Findings-Panel hinzu.
  3. Generiert KI-gestützte Refactoring-Vorschläge.

Bob-Tipps läuft kontinuierlich im Hintergrund, ohne manuelle Scans oder Konfiguration zu erfordern. Die Analyse erfolgt automatisch, während du Code schreibst und änderst.

Was Bob-Tipps erkennt

Bob-Tipps zielt speziell auf zwei Kategorien von Codequalitätsproblemen ab:

Hohe zyklomatische Komplexität

Funktionen mit tief verschachtelter Logik oder übermäßigen Verzweigungen:

  • Mehrfach verschachtelte if/else-Anweisungen.
  • Komplexe switch-Anweisungen mit vielen Fällen.
  • Tief verschachtelte Schleifen.
  • Übermäßige Bedingungslogik.

Diese Muster erschweren das Verstehen, Testen und Warten von Code.

Geringe Wartbarkeit

Funktionen, die schwer zu lesen, zu testen oder zu erweitern sind:

  • Lange Funktionen mit zu vielen Verantwortlichkeiten.
  • Unzureichende Trennung von Zuständigkeiten.
  • Komplexe Logik, die schwer nachzuvollziehen ist.
  • Code, der von einer Zerlegung profitieren würde.

Befunde ansehen und beheben

Im Editor

Wenn Bob ein Qualitätsproblem identifiziert:

  1. Die betroffene Funktion erscheint mit einer lila Unterstreichung im Editor.
  2. Fahre mit der Maus über die Unterstreichung, um einen Tooltip mit folgenden Informationen zu sehen:
    • Das erkannte spezifische Qualitätsproblem.
    • KI-gestützte Refactoring-Vorschläge.
    • Optionen, das Problem mit Bob zu besprechen.

Über das Bob-Findings-Panel

Alle Befunde aus deinen geöffneten Dateien werden im Bob-Findings-Panel zusammengefasst:

  • Alle Qualitätsprobleme an einem zentralen Ort anzeigen.
  • Zwischen Befunden in mehreren Dateien navigieren.
  • Verfolgen, welche Probleme du bereits behoben hast.
  • Befunde im Chat mit '@problems' referenzieren. Weitere Informationen findest du unter Kontexterwähnungen.

Mit Bob beheben

Arbeite mit Bob zusammen, um deinen Code zu refaktorieren:

Fahre mit der Maus über die lila Unterstreichung im Editor.

Klicke im Tooltip auf Mit Bob beheben.

Bob öffnet eine Chat-Unterhaltung mit Kontext zum Problem.

Besprich den Refactoring-Ansatz und implementiere die Lösung gemeinsam.

Nutze diese Option, wenn du:

  • Das Problem genauer verstehen möchtest.
  • Verschiedene Refactoring-Ansätze erkunden möchtest.
  • Eine komplexere Refactoring-Strategie planen möchtest.
  • Best Practices für ähnliche Situationen kennenlernen möchtest.

Bob-Tipps konfigurieren

Funktion aktivieren oder deaktivieren

Klicke auf die Schaltfläche Bob – Einstellungen in der unteren rechten Ecke von IBM Bob.

Klicke auf den Tab Bob-Findings.

Schalte Bob-Tipps ein oder aus.

Wenn deaktiviert, stoppt Bob die Dateianalyse und entfernt bestehende Befunde aus dem Editor und dem Bob-Findings-Panel.

Wie ist dieses Thema?