<! - open -> Warum machen so viele Entwickler dies in ihrem HTML? <! - / close ->

8
 <body>  
  <!-- wrapper -->  
  <div id="wrapper"> 
   <!-- title -->
   <div id="title"><img src="title.png" alt="" /></div>

   <!-- form wrapper -->
   <div id="form_wrapper">

    <!-- form -->
    <form action="thankyou.php" method="POST">
     <!-- ... ... -->
    </form>
    <!-- /form -->
   </div>
   <!-- /form wrapper -->
  </div>
  <!-- /wrapper -->
 </body>

Ich kann das <!-- /wrapper -->am Ende fast verstehen , weil es so weit vom Anfang des Tags / Paares entfernt ist ... aber im Ernst, wozu dienen die ersten Kommentarzeilen? Ich würde die Frage nicht stellen, wenn ich das nicht die ganze Zeit sehen würde .

Ich habe das Gefühl, als würde mir etwas fehlen. Vielleicht handelt es sich um ungeschriebene Best Practices, obwohl ich nicht verstehe, was es möglicherweise sein könnte. Höchstwahrscheinlich ist es nur zwanghaftes Verhalten.

Wie kommentiert ihr normalerweise euer Markup, wenn überhaupt?

Stephen
quelle
Mögliches Duplikat an: programmers.stackexchange.com/questions/4858/…
Chris
1
Ich denke, ich werde damit anfangen.
Peter Turner
1
Während diese Art von Dingen nützlich sein kann, wenn sie funktionieren, habe ich gesehen, dass diese Kommentare nach einer Weile von den zugehörigen Tags getrennt werden und dann tatsächlich mehr Schaden als Nutzen anrichten.
Rohan Singh
1
Dies ist bestenfalls eine Tautologie und im schlimmsten Fall ein gefährliches Anti-Muster. Sobald jemand dieses Durcheinander bearbeitet, werden die Kommentare nicht mehr mit der Realität synchronisiert und sind eher ein Durcheinander als ohne sie. Die richtige Formatierung und eine gute IDE machen diese Art von Mist nutzlos!
1
Ich denke, der wahre Grund, warum einige Entwickler diesen Stil bevorzugen, ist, dass er symmetrisch aussieht - viele mittelmäßige Entwickler bevorzugen es, symmetrischen Code zu schreiben, ohne einen Gedanken zu verschwenden, wenn dies wirklich Sinn macht oder völlig verrückt ist. Dies wird manchmal als "zufälliges Programmieren" bezeichnet.
Doc Brown

Antworten:

9

Manchmal sind CSS-Klassennamen generisch und nicht speziell benannt. Was wäre zum Beispiel, wenn Sie hätten

<!--Code before-->



<!--Column one-->
<div class="center-bold">




    <!--Tons of lines-->




</div>
<!--End column-->

Wäre es nicht schön zu wissen, was du anfängst? Ich würde sicherlich nicht bis zum Ende scrollen wollen, um herauszufinden, dass das ganze Div eine Spalte war.

TheLQ
quelle
Nur akzeptabel, weil der Kommentar "Öffnen" ein Markup-Element identifiziert, das noch nicht mit einer ID oder einer beschreibenden Klasse identifiziert wurde .
Stephen
3
Ich denke, was mich am meisten gestört hat, waren Entlassungen wie </form><!-- /form -->und<!-- wrapper --><div id="wrapper">
Stephen
Darauf habe ich mich eingelassen, Ihr Beispiel ist nur expliziter dargestellt. Gute Antwort!
Chris
6

HTML ist für mich wie kompilierter Code. Es ist optimiert, hat keine Leerzeichen, keine Kommentare und ist so klein wie möglich, während die Arbeit erledigt wird. Ich habe jedoch einige Kommentare in meinen Vorlagen, die die HTML-Dateien generieren. Sie werden sie jedoch nie sehen, es sei denn, Sie treten dem Entwicklerteam bei!

Gleiches gilt für JavaScript. Alle JS, die Sie auf meiner Website sehen, werden komprimiert, minimiert und die Kommentare entfernt. Kommentare sind für die Entwicklung, nicht für die Verschwendung von Bandbreite!

andrewrk
quelle
4

Normalerweise wird mein Markup dynamisch generiert, sodass Kommentare nicht enthalten sind ... aber wenn ich Markup schreibe, habe ich:

<!-- start BLOCK--> 
  html markup 
<!-- close BLOCK--> 

Dadurch kann ich leichter erkennen, wo sich Hauptblöcke / Divs in meinem Code befinden.

Chris
quelle
Ich bin vollkommen einverstanden.
Evik James
2

Ich glaube, das kommt von Dokumenten, die nicht richtig eingerückt sind. Wenn Sie also anhand der Spalte, in der Sie sich befinden, nicht erkennen können, wo Sie sich befinden, sollten Sie sich als Nächstes die Kommentare ansehen. Es scheint sich aus diesem Dilemma entwickelt zu haben.

Persönlich würde ich auf die Leute kommen, die keinen Code einrücken.

Xeoncross
quelle
1

Ich kann mir nur einen gültigen Anwendungsfall dafür vorstellen: teilweise HTML-Vorlagen.

Wenn es sich um eine vollständige HTML-Seite handelt, sollten Sie richtig einrücken, damit Sie leicht erkennen können, wann Elemente beginnen und enden. Anständige Editoren markieren auch die entgegengesetzten Enden von Tags. In diesen Fällen sind irrelevante Kommentare ärgerlich.

Wenn es sich um eine Teilvorlage handelt (z. B. Kopf- und Fußzeile), kann es hilfreich sein, in der Fußzeile anzuzeigen, wo sie endet, wenn Sie einige Seitencontainer öffnen.

Header

<div id="header">
    ...
</div>
<div id="contentContainer">
    <div id="content">

Fusszeile

    </div> <!-- /#content -->
</div> <!-- /#contentContainer -->
<div id="footer">
    ...
</div>

In (vielleicht komplexeren) Fällen wie diesen ist es sehr hilfreich, die Kommentare zu haben, um zu sehen, welches Tag geschlossen werden soll. Dies ist der einzige Fall, bei dem mir diese Kommentare nichts ausmachen, sie fühlen sich jedoch immer noch schmutzig an.

Adrian Schneider
quelle
Ja, bei Dingen wie Ansichten und Vorlagen stellt dies häufig ein Problem dar, da jedes Segment nur gegen den spezifischen Code dieser Datei eingerückt ist.
Xeoncross
1

Dies ist nützlich, wenn die Seite von mehreren verschiedenen Dateien / Vorlagen usw. gerendert wird.

Etwas wie das:

<?php

echo "<!-- sidebar -->\n";
include("sidebar.php");  
echo "<!-- /sidebar -->";
# Or better yet, put the HTML comments *inside* sidebar.php
?>

Auf diese Weise können Sie den Code, der ihn erstellt hat, schnell finden, wenn Sie in Ihrem gerenderten HTML-Code etwas Seltsames bemerken.

tylerl
quelle