<! - open -> Por que tantos desenvolvedores fazem isso em HTML? <! - / fechar ->

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>

Quase consigo entender o <!-- /wrapper -->final, porque está muito longe do início do tag / pair ... mas sério, qual é o objetivo das linhas de comentário de abertura? Eu não faria a pergunta se não visse isso o tempo todo .

Sinto como se estivesse perdendo alguma coisa. Talvez haja alguma prática recomendada não escrita envolvida, embora eu não consiga entender o que poderia ser. Muito provavelmente, é apenas um comportamento obsessivo-compulsivo.

Como vocês normalmente comentam sua marcação, se é que existem?

Stephen
fonte
possível duplicar para: programmers.stackexchange.com/questions/4858/…
Chris
1
Eu acho que vou começar a fazer isso.
Peter Turner
1
Embora esse tipo de coisa possa ser útil quando funciona, vi esses comentários se divorciarem de suas tags associadas depois de um tempo e, em seguida, eles estão realmente fazendo mais mal do que bem.
Rohan Singh
1
essa é uma tautologia na melhor das hipóteses e um perigoso antipadrão na pior das hipóteses, assim que alguém editar essa bagunça, os comentários ficarão fora de sincronia com a realidade e ficarão mais bagunçados do que sem eles. Formatação adequada e boa IDE tornam esse tipo de porcaria inútil!
1
Eu acho que a verdadeira razão pela qual alguns desenvolvedores podem preferir esse estilo é que parece simétrico - muitos desenvolvedores medíocres preferem escrever código simétrico sem desperdiçar um pensamento se isso faz realmente sentido ou é totalmente irracional. Isso às vezes é chamado de "programação por coincidência".
Doc Brown

Respostas:

9

Algumas vezes, os nomes de classes CSS são genéricos e não são nomeados especificamente. Por exemplo, e se você tivesse

<!--Code before-->



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




    <!--Tons of lines-->




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

Não seria bom saber o que você está começando? Eu certamente não gostaria de rolar até o final para descobrir que o div inteiro era uma coluna.

TheLQ
fonte
Aceitável apenas porque o comentário "abertura" identifica um elemento de marcação que ainda não está identificado com um ID ou classe descritiva.
Stephen
3
Eu acho que o que mais me incomodou foram redundâncias </form><!-- /form -->e<!-- wrapper --><div id="wrapper">
Stephen
Era para isso que eu estava falando, seu exemplo é explicitado de maneira mais explícita. Boa resposta!
28410 Chris
6

HTML é como código compilado para mim. É otimizado, não possui espaços, comentários e é o menor possível ao realizar o trabalho. No entanto, tenho alguns comentários nos meus modelos que geram os arquivos HTML. Você nunca os verá, a menos que se junte à equipe de desenvolvimento!

O mesmo vale para JavaScript. Qualquer JS que você vê no meu site é compactado, minificado e tem os comentários removidos. Os comentários são para desenvolvimento, não para desperdiçar largura de banda!

andrewrk
fonte
4

Normalmente, minha marcação é gerada dinamicamente, para que os comentários não sejam incluídos ... mas quando eu escrever uma marcação, terei:

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

Torna mais fácil para mim ver onde estão os principais blocos / divs dentro do meu código.

Chris
fonte
Eu concordo totalmente.
Evik James
2

Eu acredito que isso vem de documentos que não possuem indentação adequada. Portanto, se você não pode dizer onde está da coluna em que está - a melhor coisa a seguir é olhar para os comentários. Parece ter evoluído desse dilema.

Pessoalmente, eu abordaria as pessoas que não estão identando o código.

Xeoncross
fonte
1

Só consigo pensar em um caso de uso válido para isso: modelos HTML parciais.

Se for uma página HTML completa, você deve recuar adequadamente para facilitar a identificação de quando os elementos começam e terminam. Editores decentes também destacam as extremidades opostas das tags. Nesses casos, comentários estranhos são irritantes.

Se for um modelo parcial (cabeçalho e rodapé, por exemplo), se você estiver abrindo alguns contêineres de páginas, pode ser útil mostrar no rodapé onde termina.

cabeçalho

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

rodapé

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

Em casos (talvez mais complexos) como esse, ter os comentários é bastante útil para ver qual tag deve ser fechada. Este é o único caso em que me deparei com esses comentários, mas eles ainda se sentem sujos.

Adrian Schneider
fonte
Sim, com coisas como visualizações e modelos, isso geralmente representa um problema, pois cada segmento é ofensivo apenas para o código específico desse arquivo.
Xeoncross
1

Isso é útil se a página for renderizada por vários arquivos / modelos diferentes etc.

Algo assim:

<?php

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

Dessa forma, se você notar alguma estranheza no HTML renderizado, poderá rastrear rapidamente o código que o criou.

tylerl
fonte