YAGNI (You Aren't Gonna Need It)
Ein Extreme-Programming-Prinzip, das besagt, dass Programmierer keine Funktionalität hinzufügen sollten, bis sie tatsächlich benötigt wird, um spekulative Features zu vermeiden.
Definition
YAGNI stammt aus Extreme Programming (XP) und bekämpft die Tendenz, für imaginierte zukünftige Anforderungen zu bauen. Ungenutzte Features erhöhen Code-Komplexität, Wartungsaufwand und führen potenzielle Bugs ein — alles für Funktionalität, die möglicherweise nie genutzt wird. Studien zeigen, dass 64% der Software-Features selten oder nie genutzt werden.
Warum es wichtig ist
Spekulative Features verschwenden Entwicklungszeit und schaffen technische Schulden. Code, der jeden möglichen zukünftigen Bedarf antizipiert, wird aufgebläht und schwer wartbar. YAGNI fördert den Fokus auf aktuelle, validierte Anforderungen.
Beispiel
YAGNI-Verstoß: ein generisches Plugin-System bauen "falls wir es später brauchen" wenn die App nur ein festes Verhalten benötigt. YAGNI befolgen: das einzelne Verhalten jetzt implementieren, Plugin-Architektur erst hinzufügen, wenn ein zweites Plugin tatsächlich benötigt wird.