Se você habilitar a opção "Exibir margem direita" no seu IDE de sua escolha, é provável que o padrão seja 80 caracteres. Costumo alterá-lo para 120 por nenhuma outra razão que não fosse o padrão em uma empresa que eu estava há alguns anos atrás, e nenhuma outra empresa me disse para fazê-lo de maneira diferente.
Minha pergunta é: existem estudos que realmente mostrem 80 caracteres com a largura máxima ideal para a legibilidade do código ou esse valor é apenas "é assim que sempre foi" e ninguém sabe realmente por que é assim? E a largura de uma linha de código deve fazer parte do seu padrão de codificação?
code-readability
Fostah
fonte
fonte
Respostas:
Na verdade, a coisa de 80 colunas precede muito o DOS. Ele vem de cartões perfurados, que eram dispositivos de 80 colunas.
E para responder à pergunta do OP, um "estudo" está em andamento há cerca de 600 anos - o livro impresso. Eles evoluíram ao longo dos séculos, com a legibilidade em mente, para a posição em que estamos agora, onde o comprimento médio da linha do texto é de cerca de 60 caracteres. Portanto, para facilitar a leitura, procure margens mais estreitas.
fonte
Tenha piedade dos programadores que precisam manter seu software posteriormente e atenha-se a um limite de 80 caracteres.
Razões para preferir 80:
Legível com uma fonte maior em laptops
Deixa espaço para colocar duas versões lado a lado para comparação
Deixa espaço para visualizações de navegação no IDE
Imprime sem quebrar arbitrariamente as linhas (também se aplica a email, páginas da Web, ...)
Limita a complexidade em uma linha
Limita a indentação que, por sua vez, limita a complexidade de métodos / funções
Sim, deve fazer parte do padrão de codificação.
fonte
Limits the complexity in one line
Não sei por que espalhar a complexidade por várias linhas é melhor. Apenas empurra mais para sua pilha mental.Não tenho estudos, mas relatarei minha experiência.
Acho que a rolagem horizontal é entediante ao lidar com texto. Eu olho para o ambiente em que o código será usado e defino os padrões de largura com base nesse contexto.
Por exemplo, quando trabalhei no Emacs no XWindows, funcionou bem ter duas janelas do Emacs lado a lado o tempo todo. Isso os limitou a 80 caracteres, então esse era meu comprimento máximo de linha.
Em um ponto, trabalhei no Visual Studio em uma tela de 1920x1200. Eu o manteria maximizado, com todas as janelas de ferramentas ancoradas de um lado. Havia espaço suficiente para duas janelas do editor lado a lado com cerca de 100 caracteres.
Também acho que as linhas mais longas vêm de chamadas de método com longas listas de parâmetros . Às vezes, isso é um cheiro de código : talvez o método deva ser refatorado .
Se você e seus co-programadores têm telas de alta resolução e visão nítida, use uma fonte pequena e linhas longas. Por outro lado, você pode precisar de linhas curtas.
fonte
Eu normalmente uso 120-150, a menos que a empresa descreva o contrário. No entanto, depende também do tipo de código:
Até alguns anos atrás, eu me limitava a 100, mas agora os widescreens são normalmente usados e os monitores de alta resolução 120 podem ser vistos em laptops (que eu mal uso).
Comparar uma tela a um livro não é muito bom porque um livro tem mais espaço vertical e uma tela tem mais espaço horizontal. Eu sempre tento manter uma função no máximo. uma tela visível por muito tempo.
fonte
Talvez os 80 caracteres também sejam um bom ponto para evitar essas cadeias de getter ruins:
se você o limitar a 80 caracteres, talvez alguém localize essas variáveis e faça uma verificação nula, etc., mas talvez a maioria dos programadores os deixe agrupar na próxima linha. Eu não sei
Além disso, 80 caracteres são ótimos como o azul estrelado mencionado. Isso deve definir definitivamente os padrões de codificação.
fonte
Desconsiderando as restrições de hardware e quaisquer diferenças na forma como lemos código versus linguagem natural, vejo três razões principais para limitar as linhas a cerca de 80 caracteres.
fonte
Lembro-me claramente de ter lido em algum lugar (acho que estava na documentação do Agile ) que, para uma legibilidade ideal, a largura de um documento deve ter cerca de dois alfabetos ou 60 a 70 caracteres. Acho que a largura da linha dos terminais antigos veio em parte dessa antiga regra tipográfica.
fonte
A opção de margem direita tem como objetivo mostrar a largura da página, se você deseja imprimir o código, e postou anteriormente que estava definido como 80, porque é isso que historicamente era o comprimento da linha antes da GUI desde o início. cartões.
Recentemente, vi uma recomendação em algum blog (não lembro qual blog) para aumentar o tamanho da fonte do IDE para melhorar a qualidade do código, a lógica por trás disso é que, se houver menos código na tela, você escreverá linhas mais curtas e funções shouter.
Na minha opinião, linhas mais curtas facilitam a leitura do código e a depuração, por isso tento manter as linhas curtas, se você precisar definir um limite para escrever um código melhor e escolher o que funciona melhor para você - também se você for mais produtivo com linhas mais longas podem aumentar o tamanho e o código da página apenas em telas amplas.
fonte
Como algumas pessoas apontaram em outras respostas, o motivo do limite de 80 caracteres é parcialmente histórico (cartões perfurados, telas pequenas, impressoras etc.) e parcialmente biológico (para rastrear em que linha você está, geralmente é bom poder ver todo o texto. sem precisar virar a cabeça).
Dito isto, lembre-se de que ainda somos humanos e criamos ferramentas para resolver nossas próprias limitações. Proponho que você ignore todo o debate sobre a limitação de caracteres e apenas escreva coisas que façam sentido, independentemente do tamanho, e use um IDE ou editor de texto que possa ajudá-lo a acompanhar as linhas corretamente. Usando o mesmo argumento para indentação no debate de guias versus espaços, bem como a largura das indentações, proponho que você use um marcador de indentação (geralmente a guia) e faça com que as pessoas configurem seus próprios IDE ou editores de texto para exibi-los. como acharem mais confortável para eles.
Aderir a um número fixo de caracteres por linha sempre tornará as coisas piores para todos, exceto para o público-alvo. Dito isto, se você nunca compartilhará o código, jamais; então não há realmente nenhuma razão para começar essa discussão. Se você deseja compartilhar o código, provavelmente deve permitir que as pessoas decidam o que querem por conta própria, em vez de forçar seus ideais (ou alguém) sobre eles.
fonte
Que eu saiba, o caractere 80 é usado como um padrão de codificação para manter a compatibilidade com os editores de linha de comando (a largura padrão do terminal geralmente é de 80 caracteres). Com IDEs modernos e resoluções de tela grandes, 80 caracteres provavelmente não são "ideais", mas para muitos desenvolvedores é essencial manter a legibilidade no terminal. Por esse motivo, não é provável que a largura de 80 caracteres seja substituída como padrão de fato para a largura do código em breve. E para responder à sua pergunta final, sim, a largura do código, bem como qualquer outra característica que afete a legibilidade do seu código, deve ser abordada nos seus padrões de codificação.
fonte