Existem padrões de codificação para JavaScript? [fechadas]


178

Quais são os padrões de codificação estabelecidos para JavaScript?


1
Ver esta pergunta ainda aparece na pesquisa do Google, pensei que adicionar isso pode ser relevante. JavaScript é uma implementação do script ECMAScript, seguindo os padrões da ECMA. Padrão ECMA-262 . Para adicionar a partir da página wiki da ECMA :Netscape delivered JavaScript to Ecma International for standardization and the work on the specification, ECMA-262, began in November 1996
Não,

12
Fechado E protegido. Hã!?!
Robbie Dee #


12
//, WHHHHYYYY foi fechado? É uma excelente pergunta para novos programadores Javascript. Especialmente considerando o estado ah do código Javascript original, escrito por novos programadores.
Nathan Basanese

1
Você pode usar o Guia de Estilo Airbnb JavaScript para até data padrões de codificação github.com/airbnb/javascript
Naresh Chennuri

Respostas:


76

Não é exatamente o que você está procurando, mas (como os vídeos de Doug Crockford) acho que todo mundo que escreve / edita / resenha JS deve ver os slides e vídeos de Chris Heilmann em javascript sustentável.

Nos slides , slide 127, ele diz que não se preocupe tanto com os guias de estilo / padrões de código, reformate todo o código registrado no VCS.

Também estes:

Dicas sobre o Mozilla JavaScript

Guia de Estilo JavaScript



3
Em uma tentativa de resolver essa questão (localizando e decidindo um estilo de código JavaScript, embora permitindo alguma flexibilidade), eu criei o jscode.org, onde você pode gerar estilos de código personalizados de acordo com algumas configurações (sim, pode parecer flagrante publicidade, mas não estou ganhando nada por lá, apenas criei isso para mim e minha equipe e acho que é de bom valor).
Bruno Bernardino

O Mozilla JavaScript Tips é muito escasso, eu não o incluiria.
Análise difusa

24

Outra razão pela qual as diretrizes de codificação JavaScript de Crockford são uma boa idéia a seguir:

Esse código (abaixo) na verdade retorna indefinido por causa da injeção de ponto e vírgula do JavaScript - que é uma boa razão para fazer com que toda a equipe de desenvolvedores cante na mesma partitura:

return // injected semicolon, therefore returns 'undefined'
{
    javascript : "fantastic"
}; // object constructs anonymously but nothing happens with it.

Um pouco mais sobre isso em Cuidado com a inserção de ponto e vírgula JavaScript


2
Há também o JSLint para ajudar a automatizar / verificar algumas dessas diretrizes. jslint.com
Funka

10

Eu nunca vi um padrão de codificação JavaScript amplamente reconhecido por aí. Escrevemos o nosso há algum tempo e publiquei no meu blog de acordo com o meu empregador.

Lembre-se de que algumas diretrizes podem estar um pouco desatualizadas.


Este documento tem referência às 'diretrizes de programação C #'. Você o tem disponível publicamente também?
z-boss


6

Você pode encontrar algumas convenções de codificação simples, mas essenciais, no Wiki do Google Code .

Para guias de estilo muito detalhados, leia o Dojo Style Guide . Ele aborda as convenções de nomenclatura, arquivo, uso de variável, layout de código, espaço em branco e comentários.


4

Um pouco confuso que não consigo encontrar nas respostas Idiomatic.js e jQuery Core Style Guide . Addy Osmani coloca esses dois no topo da lista completa de estilos de codificação para JavaScript em seu artigo "Guias e embelezadores de estilo JavaScript".

Pessoalmente, prefiro o padrão jQuery, embora não seja muito diferente do Idiomatic.js. Qualquer que seja o padrão escolhido, você precisará de um validador para verificar o êxito do seu cumprimento. Eu não consegui encontrar nenhum para jQuery ou pelo menos Idiomatic, mas eventualmente criei JS_CodeSniffer



2

Eu e alguns outros recentemente juntos estes (PDF ou HTML)

Eles são destinados principalmente ao uso com o Ajax Control Toolkit, mas contêm realisticamente todo tipo de orientação útil, independentemente da estrutura usada.

Espero que ajude.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.