Vibe coding

Warum toter Code so lange ueberlebt, und wie man ihn sicher findet

Toter Code ist nicht nur Ballast, er ist Verwirrungspotenzial fuer jeden, der die Codebase liest.

Niemand ist sicher, ob ein bestimmter Codeteil wirklich tot ist, und dieser Zweifel haelt Code am Leben, den seit Jahren niemand mehr aufruft. Die Loesung dafuer ist nicht Mut, sondern Werkzeuge.

Wie man Dead Code sicher identifiziert

Statische Analyse mit Werkzeugen wie PHPStan auf hoeheren Leveln, phpstan-dead-code, ts-prune fuer TypeScript oder ESLints no-unused-vars findet syntaktisch toten Code. Coverage-Daten zeigen, welcher Code nie von Tests ausgefuehrt wird und oft auch im Produktivbetrieb tot ist, kombiniert mit Produktions-Coverage-Messung lassen sich real ungenutzte Bereiche identifizieren. Und die Git-Historie zeigt Code, der seit Jahren nicht geaendert wurde und keine dokumentierten Nutzungspunkte hat, ein guter Kandidat.

Risikoarmes Entfernen

Vor dem Loeschen sicherstellen, dass Tests den Bereich abdecken, dann loeschen, Tests laufen lassen und kurz in Staging beobachten, statt sofort in Produktion zu gehen. Und: Git ist die Geschichte des Projekts, Code wird nie endgueltig verloren, er ist nur ein Revert entfernt.

Was kein Dead Code ist

Selten ausgefuehrter Code ist nicht automatisch tot. Error-Handler, Fallback-Logik und Backup-Code-Pfade werden gebraucht, wenn es darauf ankommt.

Checkliste: Statische Analyse fuer unerreichbaren Code konfiguriert, Coverage-Bericht ausgewertet, identifizierter Code in Staging-Branch entfernt, Monitoring-Periode eingehalten, Loeschen durch Tests abgesichert.

Ein Beispiel aus der Praxis

Eine als „tot“ vermutete Funktion wurde nach sorgfaeltiger Pruefung aus dem Code entfernt und in Staging beobachtet. Zwei Wochen spaeter meldete ein Kunde einen Fehler in einem selten genutzten Reporting-Feature, das genau auf diese Funktion zurueckgriff, allerdings nur einmal im Quartal beim Jahresabschluss. Der Fund zeigte, dass auch eine sorgfaeltige Analyse seltene Nutzungsmuster uebersehen kann. Seither gilt im Team die Regel, geloeschten Code zusaetzlich mindestens einen vollen Geschaeftszyklus in Staging zu beobachten, nicht nur wenige Tage.

Dead Code sauber entfernen? markom.digital macht Codebase-Cleanup strukturiert und risikoarm, kein Raten, kein Hoffen.

Weitere Beiträge