Frage

Wie lange sollten Sie alten Code halten in Ihrem Code-Basis auf Kommentar? Die Vertragspartner weiterhin alten Code in Code-Basis zu halten, indem es in Kommentare drehen. Das ist wirklich frustrierend, und ich möchte, dass sie nur den alten Code entfernen, anstatt sie zu kommentieren heraus.

Sie haben einen triftigen Grund alten Code in der Code-Basis als Kommentare zu halten? Ich bin mit Versionskontrolle von Visual Source

War es hilfreich?

Lösung

Wenn Sie so etwas wie SVN oder CVS verwenden, nein. Ich würde sie auf den ersten Blick löschen. Sie machen Code weniger lesbar.

Kommentare sollte es dem Programmierer zu helfen, der den Code liest, erklären Sachen, etc.

Andere Tipps

Ein gültiger Grund, warum ich denken kann, ist dieses (fiktives) Beispiel:

# removed the following test because this should work now that bug #12345 is fixed.
#assert a != 0
b = number / a

Im Grunde genommen an andere Entwickler zu verhindern, den Code wieder einsetzen, die aus einem Grund entfernt wurde.

Sagen Sie den Auftragnehmer dies zu tun zu stoppen. Dies ist eine schreckliche Praxis.

Es gibt nicht wirklich einen Grund, in der Codebasis alten Code zu halten; es wird nur im Weg. Ihr Versionskontrollsystem zeigt Ihnen die Geschichte jeder Datei.

Die einzigen möglicherweise guten Gründe für alten Code hält es möglicherweise für historische Referenz (vielleicht, wenn der alte Code etwas tat, besonders merkwürdig, dass für die aktuelle Situation relevant sein könnte).

Gelegentlich werde ich nur kommentieren Sie Code zu wissen, dass ich eine vorübergehende Änderung bin setzen in (durch temporäre Ich meine weniger als ein paar Tage) und planen, auf jeden Fall, um es zurück zu gehen.

edit: ein andere ähnliche Praxis Namen und Daten von Änderungen in der Datei setzen:

// 06/20/2009 - joe changed this #1245

Sie dies auch nicht tun. Es könnte an der Zeit wertvoll scheint, um zu sehen, der eine Änderung vorgenommen, aber im Laufe der Zeit wirklich macht es keinen Wert hat und auch den Code clutters.

Wenn Sie mit der Quellcodeverwaltung, die Sie sollten, dann entfernen Sie den alten Code sein als eine Kopie in der Quellcodeverwaltung bereit sein wird, und wartet auf Sie, wenn Sie es jemals wieder hinzufügen müssen. Mit dem alten Code in es wird die Fähigkeit verringern, den Code zu lesen, wie oben und einführen Verwirrung angegeben. Auch wenn Sie Unternehmer sind mit Ihrem Code zu schreiben, sagen Sie ihnen, wie man Code, wie Sie ihre Löhne zahlen. Definieren von Kennzeichnungsnormen für sie und erhalten sie durch die Absicht zu Code, der den Namen von Methoden, Eigenschaften usw. verbessern sollte und reduziert alle zusammen die Notwendigkeit für Kommentare.

Sie fragen: „Wie lange?“ Ich bin nicht durch mit altem Code in einer oder zwei Stellen beleidigt, wenn diejenigen, die Hot Spots sind, wo die Menschen noch arbeiten.

Vielleicht fühlen sie sich nicht sicher über den neuen Code noch. Ist der neue Code „getan?“ Ist es geschrieben, wie es sein sollte? Ist es Tests bestanden? Ist es kommentiert und dokumentiert spec? Ist die Leistung, wo es sein sollte? (Der beste Grund, von dem ich denken kann den alten und den neuen Code zu haben, sowohl um ist, wenn ich Timing oder Profilieren einen bestimmten Satz von Fällen.)

Gibt es etwas über den alten Code, der auf den neuen Code vorzuziehen ist?

Sie fühlen sich die Vertragspartner in Eile? Oder ist es nur eine alte Gewohnheit von Pre-Versionskontrolle Tagen?

Wenn Sie die Auftragnehmer erinnern, die sie haben, um Code nicht zu kommentieren, wie Sourcesafe die Geschichte halten sie fragen, warum sie es tun.

Es könnte sein, dass sie es aus irgendeinem Grund nicht vertrauen. Wenn Sie diesen Grund aus ihnen bekommen sie könnten Aufmerksamkeit schenken. Ich weiß, wenn wir von VSS vielen Jahren zog vor es wegen der Zuverlässigkeit und Skalierbarkeit Probleme war, dass sie auch ausgesetzt worden sein könnte. Wenn Sie ihre Anliegen adressieren kann, entweder durch den Nachweis, dass VSS für Ihre Bedürfnisse geeignet ist oder sagen Sie andere Source-Control-Lösungen untersuchen werden (wenn Sie das Budget für sie natürlich haben), sollten Sie sie für sich gewinnen.

Persuasion ist besser als Zwang.

Ja nuke es auf den ersten Blick. Es gibt keinen anderen Wert, um zu zeigen, dass der Entwickler, dass es entweder war sich nicht sicher über die Entfernung davon kommentiert. Oder sie wissen nicht, wie Sie Ihre Source-Control-Software nutzen.

Im Grunde haben Sie nur zwei Möglichkeiten.

  1. Entfernen Sie es - das ist, wenn Sie einen Code-Repository verwenden. Ihr Repository wird Ihnen genau sagen, welche Änderungen vorgenommen wurden, so gibt es keine Notwendigkeit, lange alte Kommentare in Ihrem Arbeits Code zu halten, was nicht etwas in der einfachen Sprache nicht erklären.
  2. Auf der anderen Seite, wenn Sie diesen Code aus mehreren Gründen, beispielsweise halten wollen, hielt ich einen Floating-Point-Berechnung Code in meiner Anwendung auf Kommentar, weil sie nicht über die Plattform funktionierten, war ich Programmierung für. Aber wie ich würde nicht meine Anwendung möchte diese Plattform bleiben begrenzt auf, hielt ich den Code dort, so spart er sich die Mühe, wenn ich Port die Anwendung auf einer Plattform, die Unterstützung Berechnungen Floating-Point-tat. Dies ist nur einer der Gründe, alten Code zu halten, und vielleicht zu Menschen gleichen Hintergrund anwendbar sein.

Ansonsten oben erwähnt sind Ihre nur zwei Möglichkeiten. Ihr Anruf !!

den alten Code zu halten um nur macht es schwieriger, den Code als Ganzes zu lesen. Solange es für das Projekt eine Form der Versionskontrolle vorhanden ist, sollte der Code auf Kommentar gelöscht werden. Wenn Sie keine Versionskontrolle haben und alle oben nicht gesetzt, dann in einer Datei den alten Code Platzierung irgendwo nicht Teil der Codebasis ist empfehlenswert.

Ich nehme an, Sie zu erheblichen Codeblöcken verweisen, die von einem gewissen Wert zu sein scheinen, oder gute Algorithmen in ihrem eigenen Recht, nicht nur die ungeraden Zeile hier oder dort.

In diesen Fällen gibt es eine natürliche Tendenz, den Code zu halten, wenn Sie große Änderungen vorgenommen haben, die alten wie Kommentare wirken als eine Form von Code-Review zu halten. Wer die neueste Version immer in der Lage, sofort die großen Veränderungen zu sehen, die gemacht wurden, und wenn es ein Problem ist, ist es viel leichter zu sehen, was früher da sein. Wenn das Problem mit dem neuen Code ist, dann gibt es eine sehr einfache Möglichkeit, um sofort es zu überprüfen.

So, da, ich neige dazu, für die erste Revision alten Code zu kommentieren, und dann erst löschen, wenn der Code anschließend wieder geändert wird, bis zu diesem Zeitpunkt wird sich die Änderung ‚Bett in‘ worden und wahrscheinlich nicht sein eine Ursache für Fehler.

Diese Kommentare eine Form der Dokumentation sind, gibt es keine Notwendigkeit, sie für jedes puristisches Ideal zu entfernen ‚saubere‘ Codierung. Entfernen Sie sie, wenn sie nicht mehr benötigt werden, sie halten, während sie von Wert sein kann.

Zuerst sage ich es loswerden.

Aber ich weiß, einen Grund, nicht zu: Während es immer noch da in der Versionskontrolle ist, bedeutet das nicht, dass jemand sie sehen kann. Wenn Sie es müssen eventuell wieder sehen, müssen Sie zuerst wissen, dass es einmal existierte. Manchmal machen Sie eine Änderung, die zukünftigen Entwickler benötigen, sowohl die alte und neue Art und Weise zu sehen, und wenn Sie die alte Art und Weise entfernen, wie machen die Entwickler wissen, dass es einmal war? Die meisten Menschen dokumentieren keine Änderungen in der Versionskontrolle gut genug für diese Art von Problem.

So viele Gründe, den alten Code dort zu lassen. Im Grunde genommen - sobald es gelöscht wird, wird es effektiv weg - es sei denn, jemand tatsächlich erinnert es da war.

Als böses Auftragnehmer ich nicht löschen Code, wenn ich eine wesentliche Umschreiben eines Verfahrens tue - es Verschrottung und ihn zu ersetzen anstatt „Fixierung“ es.

Das Projekt ich zur Zeit der Einführung zu, verwendet jedoch ein anderes Konzept - eine Art Kompromiss ... Wenn Sie sich entscheiden, dass ein Teil des Codes nicht mehr verwendet werden soll, kommentieren Sie es einfach aus, schreiben Sie ein Datum aus Kommentierung aus, und (wenn es möglich ist - zum Beispiel in Netbeans oder Visual Studio) fügen Sie den alten Code in #region OLD_IMPL. Bewirken? - Sie noch einen alten Code nur für den Fall - Block nicht verwendeten Code dauert genau 1 Zeile (#region OLD_IMPL) - Wenn Sie sehen, wird dieser Code nicht für ein Jahr verwendet (Sie haben Datum es zu kommentieren out), können Sie einfach löschen.

Im Fall von kritischen Situationen, die Sie immer SVN verwenden;)

Wer kommentiert-out-Code loswerden sagen, weil die Versionskontrolle Tools wird jedes Problem lösen Sie den Weg laufen könnte, sind Idioten.

Sie müssen von obsoletem Code, um loszuwerden, ONCE SIND SIE POSITIV sicher, dass es wirklich wirklich OBSOLETE.

Hatten Sie jemals eine Änderung zu überarbeiten, weil „es nicht ganz schlecht war, aber leider es auch nicht ganz gut war“? Wenn Sie weiterhin die Produktionsquelle herausnehmen können und wissen, dass die vorherige Version des Codes noch drin ist, in einiger Textform, wird es Ihnen viel Zeit sparen, da Sie nicht zu komplex, schwer greifen müssen -Kontrolle und daher sehr fehler pronce Prozesse unter Verwendung eines beliebigen „Teil-Source-Zusammenführung“ und „Teil-Source-Konsolidierung“, die Ihr Versionskontrollwerkzeug können Sie anbieten.

Die Menschen, die diese Realität nicht mögen sicherlich ihre ganze Karriere haben muss verbrachten nur Code produzieren, die nie „nicht ganz schlecht, aber nicht ganz gut entweder“, oder mit anderen Worten waren, nur Code erzeugen, die entweder ganz schlecht oder sonst ganz perfekt. Und wir alle wissen, wie groß die Wahrscheinlichkeit ist, letztere zu erreichen.

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