Existe uniformidade demais? Onde trabalho, é claro que temos padrões, incluindo convenções de nomes, arquiteturas, estruturas para alavancar etc. No entanto, ultimamente, tem havido muitas críticas às coisas que eu consideraria mais estilo.
Por exemplo, escrevendo if
instruções em várias linhas versus uma linha, usando o ??
operador coalescente n # c em vez de == null
, digamos , quantidades de espaçamento para recuos etc.
Parece-me que isso começa a ser mais uma escolha de estilo pessoal e não precisa ser uniforme em uma equipe ou empresa. O que uma pessoa pensa que lê com mais clareza o que outra pessoa pode não entender. Existe algum valor para essa uniformidade "extra"?
Respostas:
Uniformidade não é um problema (é bom), mas rigidez ou inflexibilidade podem ser. Se, na luta pela uniformidade, você se torna dogmático, o dano que está causando à equipe pode ser maior do que o bem que advém da (possivelmente) uniformidade resultante.
É melhor definir o estilo básico para as coisas mais importantes (padrões de nomeação e uso de maiúsculas, recuo, colocação de novas linhas e colchetes, etc.), definir recomendações para coisas menos importantes (se formato de declaração, outro espaço em branco entre parênteses, etc.) e não se preocupe com o resto.
fonte
Quando potencialmente dezenas de pessoas estão trabalhando em um projeto ao longo dos anos de sua vida útil, às vezes fica confuso quando você precisa pular estilos. Imagine ler um livro em que capítulos diferentes são escritos por autores diferentes, que apenas mantêm um estilo de escrita. É possível, mas é irritante.
Atualmente, a maioria dos IDEs pode aplicar estilos, portanto, se necessário, você pode distribuir (como parte do código-fonte do projeto) um arquivo de preferências IDE que especifique o estilo de codificação escolhido e que todos o instalem e o usem para formatar o código que estão escrevendo . Aposto que existem maneiras de reformatar / estilizar o código no check-in (embora eu ainda não tenha investigado isso).
fonte
Um caso de excesso de uniformidade que eu vi é ter um único padrão que se aplica a todas as linguagens de programação, independentemente da adequação:
goto
até mesmo em linguagens como C, semtry
...catch
.InitialCaps
nomes (como no MFC e C # da Microsoft) em JavaScript, onde está a biblioteca padrãoinitialLowerCase
.fonte
Eu não acho que exista muita uniformidade. No entanto, muitas vezes considero muita ESPECIFICIDADE nos padrões de codificação. Os benefícios de todos que colocam a chave de abertura em uma linha separada são duvidosos na melhor das hipóteses e não superam o tempo gasto discutindo sobre isso ou corrigindo problemas estéticos no código.
fonte
Eu teria 2 argumentos para a uniformidade:
Promoção da propriedade coletiva. Que alguém possa editar o código de outra pessoa sem temer que o "bebê" de alguém esteja prestes a ser prejudicado pela mudança. Uma espécie de mentalidade "Estamos todos juntos nisso".
Facilidade de adicionar a ele. Se algo já foi feito em outro lugar, isso pode ser utilizado e reutilizado. Certas convenções podem ajudar a facilitar a leitura ou a alteração das coisas, por isso, esse é outro benefício para minha mente.
fonte