Spaghetticode

Ein Teller Spaghetti sieht verworren und unübersichtlich aus. Von diesem Aussehen leitet sich der Name Spaghetticode ab.

Spaghetticode ist ein abwertender Begriff für Software-Quellcode, der verworrene Kontrollstrukturen aufweist. Ein Indiz dafür kann etwa die Verwendung von Sprunganweisungen (wie GOTO) sein, wobei man zum gleichen Ziel auch ohne Sprunganweisung gelangen würde. Jedes verworrene und auch für erfahrene Programmierer schlecht nachvollziehbare Stück Quellcode kann als Spaghetticode bezeichnet werden. Eine so geschriebene Software muss nicht schlecht funktionieren, auch bedeutet Spaghetticode nicht zwingend eine mangelhafte Kommentierung der einzelnen Programmierschritte, allerdings führt Spaghetticode auf Grund der schlechten Nachvollziehbarkeit zu erhöhtem Wartungsaufwand. Zudem kann Spaghetticode bei ähnlichen Anforderungen in der Regel wesentlich schlechter oder nur mit hohem Aufwand wiederverwendet werden.

Spaghetticode kann unterschiedliche Ursachen haben. Oft neigen unerfahrene Programmierer dazu, „einfach drauf los zu programmieren“, wodurch zwangsläufig Spaghetticode entsteht. Auch die wiederholte spätere Erweiterung des Quellcodes, ohne dass ein Refactoring durchgeführt wird, kann zu Durcheinander und damit zu Spaghetticode führen.


Developed by StudentB