Spaghetti Code

Was bedeutet Spaghetti Code?

Mit dem Begriff „Spaghetti Code“ wird im allgemeinen Software-Quellcode bezeichnet, der chaotisch bzw. unübersichtlich geschrieben wurde. Dabei handelt es sich nicht automatisch um den gesamten Quellcode, sondern es kann durchaus auch nur ein Teil der Software betroffen sein. Das eigentliche Problem besteht darin, dass solch ein Code schwierig zu pflegen und zu warten ist. Die Entstehung dieses Codes ist oft darauf zurückzuführen, dass der jeweilige Entwickler zu dem Zeitpunkt noch nicht genügend Know-how in der jeweiligen Programmiersprache aufgebaut hat und einfach drauf los programmiert.

Sofern man über „Spaghetti Code“ spricht bedeutet die nicht gleichzeitig, dass das Programm nicht funktionsfähig ist. In den meisten Fällen wird der Begriff eher verwendet, wenn ein erfahrener Entwickler versucht Quellcode nachzuvollziehen und dabei scheitert.


Wie lässt sich Spaghetti Code in der Praxis verhindern?

Softwareentwicklung mit Codierungsstandards

Codierungsstandards machen ein Projekt wie bspw. Typo3 überhaupt erst möglich. Eine Menge von Entwicklern haben am Kern gearbeitet, wobei die Typo3-Codierungsstandards dafür gesorgt haben, dass alle mit den gleichen Richtlinien entwickelt haben.

Im Grunde genommen sind die Codierungsstandards nur Regeln, die die Verwendung von allen Entwicklern erzwingt, damit Fehler leicht zu finden und zu beheben sind. Zudem können zukünftige Entwickler leichter erkennen, was genau mit jeder Codezeile bezweckt wurde. Sofern ein Entwickler sich nicht an die Richtlinien hält, wird dies mittels eines Tests festgestellt und der entsprechende Code wird abgelehnt. Ohne Tests wäre die Gefahr zu hoch, dass Codezeilen die Entwicklung zu sehr behindern. Dateien könnten verloren gehen, Zeilen könnten gelöscht oder falsch nummeriert werden. Diese Art von Chaos sollen die Codierungsstandards verhindern.


Code Kommentieren

Generell sorgen Kommentare dafür, dass der Quellcode leichter verständlich wird. Es lässt sich dadurch häufig besser nachvollziehen, was der Entwickler sich bei seinem Code gedacht hat. Demnach sollte beim Schreiben von Software darauf geachtet werden, dass sich an komplexen Stellen ein Kommentar darüber befindet, was genau sich bei der Umsetzung gedacht wurde. Bei bspw. einer komplizierten Funktion ist es sehr hilfreich, die Logik dahinter zu verstehen und die Frage nach dem „warum wurde es so umgesetzt?“ dadurch beantwortet zu bekommen. Im Endeffekt spart es einem unendlich viel Zeit, da ansonsten der gesamte Quellcode erst analysiert werden muss, um die Umsetzung zu verstehen.

In der Praxis ist das Kommentieren ein häufig vernachlässigter Punkt, da eine gute Dokumentation innerhalb der Software auch Zeit kostet. Hält man sich allerdings daran, kann es bei der Weiterentwicklung bzw. Wartung sehr wertvoll sein.


zurück zur Übersichtsseite