Contexto do testador
Primeiro, vamos definir os testadores. A distinção entre funções de desenvolvimento de software e testes de software envolve o acesso ao código-fonte. Os desenvolvedores estão constantemente em contato com detalhes do código, concentrando-se no teste de unidade. Os membros da equipe chamados testadores são quase sempre intencionalmente alheios aos níveis mais baixos de implementação, concentrando-se em testes de integração, testes de estresse, testes de carga, testes de compatibilidade. Portanto, é mais provável que um testador observe a estrutura do código-fonte quando um erro de digitação quebra uma construção ou quando um rastreamento de pilha chega aos registros.
Usar qualquer estilo que os outros membros da sua equipe considerem fácil de manter normalmente significa que os testadores terão menos quebras de compilação e deficiências de comportamento a longo prazo. Em caso de dúvida, pergunte ao seu time ou vá atrás da simplicidade.
Contexto de revisão de código
Quando o código está sendo revisado por um colega desenvolvedor antes do commit, é claro que as diferenças no estilo do código são importantes. Aquele que é padrão dentro da organização / produto / projeto, ou familiar aos outros membros da equipe, é o correto. Os outros estão incorretos - menos pontos e retrabalho.
Se um desenvolvedor puder explicar por que uma determinada prática está melhor do que o padrão atual, e por que o padrão deve ser atualizado (essa questão já fornece muitos argumentos disponíveis de qualquer forma), isto é, mais pontos, mas há não é motivo para se desviar intencionalmente primeiro e explicar apenas o segundo.
Contexto da entrevista
Durante uma entrevista, erros de digitação, diferenças de recuo, etc., não importam realmente. Suas duas implementações compilam exatamente o mesmo código binário. Comparado com as implementações padrão da mesma tarefa, qualquer uma das nossas amostras equivalentes é muito mais fácil de ler, muito mais lenta e também muito mais. 09/21 / strcpy-data-corruption-on-core-i7-com-linux-64bit / "> mais seguro de usar para pessoas que não estão profundamente familiarizadas com a biblioteca C padrão. Isso ocorre em parte porque a parte "não se sobrepõe" da tarefa pode ter sido traduzida para a palavra-chave restrict
, mas não foi.
A diferença no estilo de codificação diz coisas sobre a alma do desenvolvedor. Ambos os estilos de codificação mostrados são completamente padrão da indústria, por isso seria tolo julgar a experiência ou as habilidades do candidato com base apenas no estilo de codificação. No entanto, é possível que os dois programadores acabem sendo oferecidos a cargos de orientação diferente, ou que uma organização específica encontre um ajuste com apenas um desses dois estilos de personalidade.