Offensichtlich wollen einige Programmierer zeigen, wie schlau sie sind, indem sie einen unglaublich komplizierten Code erstellen, den niemand verstehen kann. Andere Programmierer feuern auf so hohem Niveau, dass Komplikationen bei Lösungen eine natürliche Entwicklung sind.
Der schlechteste Code, den ich je gesehen habe, war eine Methode mit über 2000 Codezeilen. Zweifellos war dieser Code komplex, aber auch sehr schlecht.
Ich denke, dass ein guter Programmierer übermäßig komplizierten Code vermeidet. Dazu gehört, die Versuchung zu vermeiden, ein Entwurfsmuster dazu zu zwingen, in eine Lösung zu passen, die es nicht wirklich benötigt. Es beinhaltet auch das Vermeiden von Gott-Objekten, magischen Knöpfen, vorzeitiger Optimierung, vorzeitiger Verallgemeinerung und anderen Anti-Mustern.
Ich überarbeite ständig und suche nach Möglichkeiten, meine Lösungen zu vereinfachen, da Komplexitätswachstum eine organische Sache ist. Wie viele andere organische Dinge muss es beschnitten und zurückgeschnitten werden, damit es weiterhin verwendet werden kann. Ich hasse es, mit übermäßig komplizierten Lösungen interagieren zu müssen, denn mit zunehmender Komplexität steigt die Wahrscheinlichkeit, dass der Code beschädigt wird.
Ich denke, dass die Lesbarkeit das wichtigste Element der Codewartung ist, und übermäßig komplizierte Lösungen verringern fast immer die Lesbarkeit und erhöhen die Wartungskosten.