Ich habe dies viel im Code gesehen, sogar vim markiert es als Sonderfall. #TODOund #FIXMEsind zwei andere Fixmarker vim Highlights, aber was bedeutet #XXXdas?
Ich habe dies viel im Code gesehen, sogar vim markiert es als Sonderfall. #TODOund #FIXMEsind zwei andere Fixmarker vim Highlights, aber was bedeutet #XXXdas?
Antworten:
XXXin einem Kommentar ist in der Regel ein Heads-up. Es könnte sein:
Ich habe oft ein aussagekräftigeres Tag wie FIXMEoder TODOoder bevorzugt HACK. XXXwird oft als Fang für alle oben genannten verwendet.
Die Suche nach 'XXX' im FreeBSD-Code-Querverweis ist ein gutes Beispiel für viele Verwendungszwecke. Es gibt Tausende...
TODOoder XXXstattdessen), aber so würde ich es interpretieren.
NOTE: Beschreibung der Funktionsweise des Codes (wenn dies nicht selbstverständlich ist).XXX: Warnung vor möglichen Fallstricken, kann als verwendet werden NOTE:XXX:.HACK: Nicht sehr gut geschriebener oder fehlerhafter Code, um ein Problem / einen Fehler zu umgehen. Sollte als verwendet werden HACK:FIXME:.FIXME: Das funktioniert irgendwie, aber es könnte besser gemacht werden. (Normalerweise Code, der in Eile geschrieben wurde und neu geschrieben werden muss).BUG: Hier gibt es ein Problem.TODO: Kein Problem, aber zusätzlicher Code muss geschrieben werden, normalerweise wenn Sie etwas überspringen.Zumindest wurde mir so etwas über diese Tags beigebracht. Grundsätzlich werden die ersten beiden ( NOTEund XXX) zur Information verwendet und es sind keine Maßnahmen erforderlich. Während die letzten drei ( FIXME, BUGund TODO) Maßnahmen erfordern. HACKliegt irgendwo dazwischen (und wird wohl kaum benutzt?).
LAZY(nicht so kritisch wie FIXME oder HACK) und OCD(bekanntes Overengineering).
Einige Notizen aus einem Python-Verbesserungsvorschlag vom Juni 2005, der abgelehnt wurde .
Die Wahl zwischen
FIXMEundXXXist schwierig.
XXXscheint häufiger, aber viel weniger beschreibend zu sein.
Darüber hinausXXXist es ein nützlicher Platzhalter in einem Code
mit einem unbekannten Wert.Somit
FIXMEist die bevorzugte Schreibweise.
Sun sagt dasXXXundFIXMEist etwas anders, was eineXXXhöhere Schwere ergibt .
Angesichts des jahrzehntelangen Chaos in diesem Bereich und zu vieler Millionen
Entwickler, die nicht von Sun beeinflusst werden, ist es jedoch einfach, sie zu Recht als Synonyme zu bezeichnen.
Der PEP beginnt mit,
Dieser PEP wurde abgelehnt. Obwohl die Community interessiert sein mag,
besteht kein Wunsch, die Standardbibliothek an diesen Standard anzupassen.
...
Was sind Codetags?
Programmierer verwenden häufig Ad-hoc-Konventionen zum Markieren von Codekommentaren, um an Codeabschnitte zu erinnern, die näher untersucht oder überprüft werden müssen. Beispiele für Markup gehören
FIXME,TODO,XXX,BUG, aber viele mehr in den breiten Einsatz in bestehende Software gibt. Ein solches Markup wird fortan als Codetags bezeichnet . Diese Codetags können in Anwendungscode, Komponententests, Skripten, allgemeiner Dokumentation oder wo immer geeignet angezeigt werden.
Das PEP ist eine interessante Lektüre.
Schauen Sie sich PEP350 an . Es erklärt alle TODO, XXXusw. ich es jeden Tag benutzen , wenn ich nicht genau , was eines der Code - Tags Mittel erinnern kann.
Ich benutze, XXXweil es einfacher zu tippen ist als TODO.
XXX ist für, wenn Sie es eilig haben und selbst darauf zurückkommen werden.
TODO ist für den Fall, dass Sie es an jemand anderen weitergeben müssen.
Wahrscheinlich ist es für Fälle, in denen Sie nicht wissen, wie Sie damit umgehen sollen.
Überprüfen Sie Folgendes : Listenansicht der TODO / FIXME / XXX / HACK-Anweisungen
Alternativtext http://editra-plugins.googlecode.com/svn/wiki/images/commentbrowser/cb_screenshot.PNG
Aus (alten) Java-Code-Konventionen :
Verwenden Sie XXX in einem Kommentar, um etwas zu markieren, das falsch ist, aber funktioniert. Verwenden Sie FIXME, um etwas zu markieren, das gefälscht und kaputt ist.
XXX ist die Abkürzung für Caveat, die sich geringfügig von NOTE unterscheidet, aber HACK sehr ähnlich ist. Es kann sich um einen Fehler in einer Bibliothek / einem Code eines Drittanbieters handeln, der / die verwendet wird, und der Code mit // XXX: zeigt an, dass es sich entweder um eine Problemumgehung aufgrund eines Fehlers im Code eines Drittanbieters handelt oder dass er für jemanden, der sucht / ändert, "Vorsicht" bedeuten kann der Code, der angibt, warum etwas auf eine bestimmte Weise getan wird, die ansonsten auf den ersten Blick falsch / unelegant erscheint. HACK ist ein Oberbegriff, der eine Problemumgehung für ein Problem bedeutet, das entweder in Ihrer eigenen Codebasis oder in einer Bibliothek eines Drittanbieters vorhanden sein kann.
Ich glaube, während FIXMEes für den Entwickler und HACKfür den Betreuer ist, XXXist es für den Benutzer.
Wenn Sie beispielsweise die XXXFunktion ignorieren und an anderer Stelle aufrufen, ohne zu verstehen, wie sie funktioniert, kann etwas Unerwartetes passieren, und die Person, die sich mit diesem Problem befasst, ist unglücklich (zumindest die Person, die das hinzugefügt hat, XXXglaubt dies). Sie können denken, dass das Problem behoben ist, wenn Sie diese Funktion nicht verwenden.
Aber FIXMESie werden sich würdig fühlen, nur den Code zu reparieren, damit er funktioniert. Und HACKvielleicht haben Sie keine bessere Wahl, auch wenn Sie es nicht benutzen.
Wenn Sie XXXauf Ihren eigenen Code geschrieben haben und jemand ihn verwendet hat, fühlen Sie sich möglicherweise aus Gründen unglücklich, weil Sie diesen Code komplett neu geschrieben haben. Dann verhält er sich völlig anders und Sie haben den Code eines anderen gebrochen. Aber wenn Sie ein FIXMEoder TODOstattdessen verlassen haben, wird es Sie nicht so sehr interessieren.
Ich benutze // XXX, damit ich mich nicht an Zeilennummern erinnern muss. Stattdessen suche ich nur nach dem XXX, wenn ich zu diesem Code zurückkehren möchte.