Pergunta

  • Você alternância comentários ou placas de código para mostrar ou esconder rapidamente conteúdo?
  • Quais são alguns métodos comuns que você usa?
  • Existe um padrão aceito?
  • Se alguns métodos devem ser evitados? ou seja, eles poderiam ser mal interpretada por alguns motores?
  • Existe uma solução alternativa ou melhor para isso?

Padrão - Isto é o que eu uso para cobrir a maioria das linguagens: CSS, JavaScript, PHP, ActionScript

/**/ visible /**/
/**\/ hidden /**/

HTML

<!----> visible <!---->
<!----/> hidden <!---->

PHP - Definir algo como US $ hide funciona bem, outras variáveis ??poderiam ser a produção ou dev -. Grandes lajes podem ser escondidos e mostrados em conjunto com uma mudança de variável simples

if(0){ hidden }
if(1){ visible }
if(!$HIDE){ content } // $HIDE defined elsewhere, visible if undefined
Foi útil?

Solução

Eu acho que se você pode controlar programaticamente o que está sendo processado, que é melhor (como o que você fez no PHP). Uma solução ainda melhor que o que você escreveu (essencialmente um pré-processador macro local) é realmente quebrar o seu código de processamento em funções que geram sub partes dos documentos. Se você não precisa dele, você não chamá-lo, e você tem uma condição clara no código. Isto é, por exemplo, a forma como MediaWiki está escrito. Caso contrário, em projetos complexos, torna-se uma confusão.

Há muitos riscos para o disco de codificação o comentário-out no código. Entre eles:

  • Muito fácil de estragar a descomentando

  • Não está claro o que foi comentado.

  • Problema quando comentou as seções sobreposição

  • Recortar e colar erros

  • Tudo o que você queria esconder ainda é acessível, afeta os motores de busca, etc.

Outras dicas

/*
Commented
// */

//*
Not commented
// */

Eu tenho dito por algumas pessoas que a maneira correta de comentar as seções de C ++, uma vez que, aparentemente, não use o pré-processador mais é usar uma instrução if.

if(false)
{
    chunk of code;
}

A teoria é que o compilador irá otimizar o código morto para fora do produto final, e eles podem ser aninhados, que comentários de estilo /* */ não pode fazer.

Essa teoria é falsa, é claro, porque você não pode usá-lo para comentar regiões arbitrárias de código, por exemplo:

class Foo
{
    void Bar();
    if(false)
    {
        int Baz(double); // WRONG!!!
    }
};

Por outro lado, isso funciona perfeitamente para linguagens como Python que permitem que qualquer declaração em qualquer bloco, e que também não têm um padrão pré-processador ou bloquear comentários.

Eu prefiro usar um editor de texto que compreende a estrutura do texto fonte que eu estou editando ( Vim e Emacs são os favoritos veneráveis), e que pode fazer dobragem de código com base na estrutura, como analisado pelo editor.

De qualquer das Vim dobrar ou Emacs dobrar atende a essa necessidade para mim.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top