Frage

Ich bin ein Unternehmer und bin oft gebracht in Projekte Köpfe nach unten und nur implementieren Funktionen für eine Frist zu sein. Oft obwohl mein Tempo wird schneller als die des zugrunde liegenden Design. So wickle ich oft auf mit Funktionen / Methoden zu erstellen, eine Aufgabe in einer vorläufigen Weise durchzuführen, während das endgültige Design erwarten.

Typischer Fall, zur Zeit war ich mit der Durchführung der Standard-Sortier einige Datensätze in einer Art und Weise die Aufgabe, die für die aktuelle Datenbank-Design zu kompliziert ist (eigentlich würde ich MySQL „Feld“ Funktion verwenden, außer ich Java nicht denken / Ruhezustand unterstützt). Also habe ich eine Funktion, wo die Aufzeichnungen könnten für die Zeit auf der Anwendungsebene sortiert werden wird, die entweder könnte neu implementiert werden, oder ganz vermieden, sobald die erforderlichen Datenbank-Design Arbeit getan ist.

Meine Sorge ist, sobald alle notwendigen Design (im allgemeinen und / oder speziell als das oben beschriebene Szenario in Bezug auf) beendet ist, ich will nicht hinter einer Spur von möglicherweise unnötige Funktionen / Methoden verlassen. Manchmal könnten sie Wert auf das Design hinzufügen, aber manchmal können sie am Ende ist eine unnötige Schicht Indirektionsebene aufzuwickeln.

Wie besorgt sollte ich das sein? Was kann ich tun, dies zu mildern? Typischerweise ist ein sehr kurzfristig Auftragnehmer, ich in der Regel nicht die Zeit hat - oder Behörde - zu etwas wie ein „Strategie-Muster“ zu implementieren, die meine Neigung sein könnten, wenn ich tatsächlich verantwortlich für das Gesamtdesign.

War es hilfreich?

Lösung

Ich denke, eine gewisse Menge an cruft zu erwarten ist als eine Code-Basis entwickelt. Auch wenn Sie versuchen, über das Löschen entfernt alten nicht verwendeten Code systematisch zu sein, ist es schwer, alles zu entfernen. Es genügt immer nicht verwendeten Code in meinem System zu finden, die ich löschen.

Starke Typisierung ist dein Freund hier, da es Ihnen erlaubt, in einer viel besseren Art und Weise als schwache Typisierung Arten und Gebräuche zu verfolgen. So bleiben Sie weg von diesen String-Datentypen, die sie machen Reinigung härter.

Ein wirklich netter Trick ist, wenn sie 24 Stunden im Wert von Datenverkehr von Ihrem Produktionssystem über ein Testsystem mit einem Code-Coverage-Tool läuft zur gleichen Zeit wiedergeben können. Das ist in der Regel eine Goldmine von totem Code, aber es kann schwierig sein, die Zeit zu finden, mit so großen Mengen an Bereinigungs unter anderem Prioritäten zu befassen;)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top