Kürzlich hatte unser Entwicklungsteam eine Diskussion über die Konvertierung einer unserer ältesten Anwendungen. Die Anwendung ist eines der Kernsysteme des Unternehmens, aber es gibt Module, die irrelevant sind und nicht mehr verwendet werden. Wir planen, die Anwendung auf ein neues Framework umzustellen und gleichzeitig alle nicht benötigten Module zu entfernen.
Wir haben keinen Projektmanager, der uns leitet, wie wir anfangen werden. Wenn ich nur Vorschläge von irgendjemandem im Team höre, mache ich mir Sorgen um die Richtung des Projekts.
Ich würde gerne die Initiative ergreifen, um zu leiten, aber ich habe keine solide Idee und Erfahrung, um das Projekt voranzubringen. Deshalb suche ich hier nach Ihrer Hilfe. Alle Vorschläge, Kommentare oder Links, die mich zur Abwicklung des Projekts führen. Gibt es Vorlagen oder Richtlinien, die ich verwenden kann?
Joel Spolsky , Gründer von Stack Overflow, Stack Exchange und Trello, sagt in seinem Blogbeitrag mit dem Titel Things You Should Never Do :
Die Entscheidung, den Code von Grund auf neu zu schreiben ... ist der schlimmste strategische Fehler, den ein Softwareunternehmen machen kann
Er führt weiter die Gründe dafür an:
Es gibt einen subtilen Grund, warum Programmierer den Code immer wegwerfen und von vorne beginnen wollen. Der Grund ist, dass sie denken, dass der alte Code ein Durcheinander ist. Und hier ist die interessante Beobachtung: Sie liegen wahrscheinlich falsch. Der Grund, warum sie den alten Code für ein Durcheinander halten, liegt in einem grundlegenden Grundgesetz der Programmierung:
Es ist schwieriger, Code zu lesen, als ihn zu schreiben.
Die Vorstellung, dass neuer Code besser ist als alter, ist offensichtlich absurd. Es wurde alter Code verwendet. Es wurde getestet. Viele Fehler wurden gefunden und behoben. Daran ist nichts auszusetzen. Es erwirbt keine Fehler, indem es einfach auf Ihrer Festplatte herumsitzt.
Wenn Sie Code wegwerfen und von vorne anfangen, werfen Sie all dieses Wissen weg. All diese gesammelten Fehlerbehebungen. Jahrelange Programmierarbeit.
Stattdessen empfiehlt er, Teile der Anwendung neu zu schreiben, um bestimmte Verbesserungen vorzunehmen:
Sogar größere Architekturänderungen können durchgeführt werden, ohne den Code wegzuwerfen.
Ein zweiter Grund, warum Programmierer denken, dass ihr Code ein Durcheinander ist, ist, dass er ineffizient ist ... Aber das betrifft nur einen kleinen Teil des Projekts, den Sie optimieren oder sogar umschreiben können. Du musst nicht alles neu schreiben. Bei der Optimierung auf Geschwindigkeit erhalten Sie mit 1 % der Arbeit 99 % des Knalls.
Kempeth
youji.xii