MR2007 schrieb:
Und manchmal ist es schlicht eine Kosten/Nutzung Abwägung, ob es mehr Arbeit ist ein komplexeres Problem direkt in Code zu zaubern und mit entsprechenden Kommentaren zu versehen oder erst verständlich (um)zuschreiben, um dann auf Kommentare zu verzichten.
Ich dachte BWLer denken so? Das Problem ist einfach, dass den schlechten Code zu kommentieren IMMER die einfachste Lösung ist, aber so auf Dauer immer mehr und mehr Probleme hinzukommen, bis irgendwann die ganze Codebasis weggeschmissen werden kann.
Du zahlst IMMER. Die Frage ist nur, wann und wie viel. Und grade die BWLer sind doch diejenigen, die sich immer dagegen sträuben, mal aufzuräumen und kurzfristig weniger features durchzukriegen, um auf Dauer die performance zu erhöhen. Ich kenne keinen Entwickler, der sich freiwillig gegen ein sinnvolles Refactoring ausgesprochen hätte, sowas wird immer von den lieben BWLern beschlossen...
Vorallem denken dann wieder manche Leute, wie hipp und cool sie doch sind, weil sie jetzt auf Kommentare grundsätzlich verzichten.
Und manche Leute denken, sie sind erfahren, abgebrüht und "vom alten Eisen", wenn sie es nicht mal versuchen. Wie du schon sagst, es gibt Extreme in beide Richtungen...
Und bei dem was heutzutage alles an Entwicklungskonzepten in irgendwelchen Seminaren und Workshops zum Besten gegeben wird, ist es kein Wunder, dass heutzutage einfachste Programme überdurchschnittlich viel Ressourcen verschwenden, durch den ganzen Overhead den man damit erzeugt und die ganzen Abhängigkeiten, die damit einhergehen.
Wie oben schon gesagt: Coden, auf Wartbarkeit und Erweiterbarkeit achte, testen, profilen und DANN optimieren und auch nur, wenn der Kunde es will. Das ist nämlich auch so ein Punkt, da optimieren Leute die Erweiterbarkeit weg, obwohl kein Mensch sich über die Performance beschwert hat und die schlechte Erweiterbarkeit tatsächlich ein Problem ist.
Ich habe Programmieren hauptsächlich während meiner Schulzeit vor 15 Jahren durch Spieleentwicklung in der Indieszene gelernt, wo man zwangsweiße immer versucht hat das letzte Quentchen Performance rauszuholen, was alles absolut konträr zu Usability und Wartbarkeit war. Mittlerweile bin ich im wissenschaftlichen Bereich und entwickle Quantensimulationen - da ist es auch heute noch das gleiche.
Dann bist du eben einer der wenigen Leute, bei denen das wirklich Sinn macht/Notwendig ist. Ich bekomme demnächst jedenfalls einen Anfall, wenn ich noch ein paar mal Spahgetti code in einer simplen Business Anwendung sehe, weil "ist performanter".
Wie gesagt, man muss nicht alles wie einen Kernel Patch oder einen Grafikkartentreiber behandeln...
Wenn es um komplexe, mathematische Zusammenhänge geht, mit einer Codebasis mit Millionen Zeilen, die von den Vorgängern oder Kollegen überwiegend schlecht bis gar nicht dokumentiert oder kommentiert sind und dazu keinerlei Standards entsprechen, da bist du froh um jeden Kommentar den zu findest.
Jo, wenn man sich nicht an die Regeln des clean code hält, darf man eben auch nicht auf Kommentare verzichten, wenn schon, denn schon, man kann sich nicht nur die "tollen" Sachen rauspicken.