Fiquei curioso para saber se alguém sabia de uma recomendação de uma fonte respeitável sobre o número máximo de linhas de código para um determinado arquivo. Por exemplo, o Closure Linter do Google recomenda que cada linha não exceda 80 caracteres.
coding-style
Devin G Rhode
fonte
fonte
Respostas:
Um arquivo deve ser curto o suficiente para que você possa encontrar qualquer função ou método sem rolar para frente e para trás várias vezes procurando por ele ou precisando se lembrar de uma sequência de pesquisa. A métrica que uso é a quantidade de tempo que gasto procurando código em um arquivo em vez de lê-lo. Se isso se tornar perceptível, é hora de reparticionar o arquivo ou a classe.
Um bom tamanho para um bloco de código básico é curto o suficiente, tanto em largura quanto em altura, para que você possa projetar suas entranhas durante uma revisão de código de grupo e ajustá-lo sem que a fonte seja tão pequena que o cara na parte de trás a sala de conferências não pode lê-lo. Esse tamanho também ajuda se você for chamado para explicar algum código quando tudo o que você tem é um dispositivo móvel ou tablet.
fonte
Não existe isso e, se houvesse, seria altamente dependente da linguagem que você estava usando (fazendo a mesma coisa no assembler versus C # ou Java, por exemplo).
Para os idiomas de nível superior, você pode ver esta discussão sobre SO. Para Java / C #, 10 a 20 linhas por método é o que Bob Martin recomenda como máximo. Não há discussão sobre arquivos, pois não é relevante e depende do que a classe deve fazer.
No que diz respeito aos 80 caracteres por limite de linha - isso é um retrocesso aos dias dos cartões perfurados. Dito isto, quando as linhas crescem demais, a legibilidade sofre.
fonte
Os comprimentos de arquivo e linha são medidas dos efeitos secundários da complexidade e, como tal, são altamente variáveis. O que você deve procurar é um código sem complexidade desnecessária, não uma certa contagem máxima de linhas.
Arquivos longos tendem a indicar que métodos, sub-rotinas ou classes são excessivamente complexas (fazer muitas coisas, não suficientemente fatoradas, etc.)
Linhas longas tendem a indicar que as expressões são excessivamente complexas.
São cheiros que indicam um possível problema de código, não métricas de destino bem definidas.
fonte
O comprimento da linha deve ser tal que você não precise rolar a tela para ver a linha inteira. Isso depende do tamanho e da resolução do monitor.
Métodos e funções são melhores se caber em uma tela.
Os arquivos não devem demorar muito. Os melhores são arquivos curtos, onde é fácil entender a classe e a implementação.
Uma vez eu trabalhei em um projeto que tinha um arquivo de 10 klines. Era como ler um livro muito complexo. Preciso dizer quantos problemas essa implementação causou?
fonte
80 caracteres!
Lembro que eu costumava ver arquivos de código-fonte para programas de cobrança de cerca de 80 páginas e mais quando fazia o COBOL. Claro, não vejo que isso seja quase uma prática comum, mas 80 caracteres é igualmente ridículo.
Do ponto de vista do tamanho da classe, se você tentar aplicar esta sugestão em uma classe Customer típica que possua cerca de 80 propriedades e 20 métodos ou mais, será necessário dividir a classe em várias outras e tornar o código muito confuso.
fonte
Eu tento manter as classes e métodos curtos, mas não se preocupe muito com o comprimento da linha. Nestes dias de telas largas e identificadores longos, acho que oitenta caracteres são muito poucos. É preciso algum trabalho para quebrar as instruções para que sejam lidas facilmente e, com um limite de oitenta caracteres, isso acontece com bastante frequência. Eu acho que cerca de 120 ou 130 colunas por linha é mais razoável.
fonte