Há debates antigos como tabs vs. spaces, mas desta vez a pergunta é sobre inserir espaços.
Por exemplo, vamos supor que exista um código como no exemplo abaixo.
Nesse caso, há quem prefira alinhar from e o sinal de igual na mesma coluna, e há quem não prefira.
// Case A.
import potato from 'potato';
import sweetpotato from 'sweetpotato';
const red = 0xff0000;
const orange = 0xff8000;
// Case B.
import potato from 'potato';
import sweetpotato from 'sweetpotato';
const red = 0xff0000;
const orange = 0xff8000;
Deixem nos comentários qual dos dois casos vocês gostam mais.
Mais do que isso, também tenho curiosidade se existe algum nome específico para esses estilos.
- Prefiro A.
- Prefiro B.
- Prefiro X, mas na empresa usamos Y (...)
10 comentários
Prefiro B e também usamos B na empresa.
No geral, prefiro A.
Mas às vezes, quando preciso definir mais de 10 linhas de constantes e variáveis, uso de vez em quando.
Eu prefiro A. O B acaba sendo inconveniente na colaboração quando não há uma convenção definida para isso.
Prefiro A.
Às vezes vejo código escrito por outras pessoas no estilo B e, sempre que isso acontece, fico impressionado porque parece ter alta legibilidade. Mas, se eu escrevo em B, o formatter e o linter fazem um escândalo, então quase nunca escrevi desse jeito. Também dá um pouco de preguiça de escrever assim.
Às vezes faço no estilo B, mas escrevo o código de acordo com a posição do tab stop.
Não curto muito porque tem a desvantagem de o diff acabar se espalhando desnecessariamente para outras linhas.
Claro que dá para ver com
ignore whitespace diff, mas não dá para impor isso aos outros participantes nem aos revisores de código...Na maioria dos casos, prefiro A.
Ao escrever código, houve exatamente uma vez em que achei um caso como B melhor. Era um código que precisava de integração com uma DLL externa, e usei um método como B ao definir vários valores constantes para uso nessa DLL, por questão de legibilidade.
Claro, como esse código de integração dificilmente mudaria, o fato de eu não ter precisado mexer nele depois de escrevê-lo também foi um dos motivos para eu poder escolher um método como B. Se fosse um código que mudasse com frequência, eu provavelmente teria mantido o método A sempre que possível.
Prefiro a autoformatação por linguagem!
(Normalmente é A, mas acho que no caso do
gofmtdo Go eu usava B.)A!
O estilo B é bem difícil de manter sem um formatter específico, e o alinhamento pode acabar se desajustando dependendo da fonte...