web-dev-qa-db-fra.com

Pourquoi PEP-8 spécifie-t-il une longueur de ligne maximale de 79 caractères?

Pourquoi en ce millénaire Python PEP-8 spécifier une longueur de ligne maximale de 79 caractères?

Pratiquement tous les éditeurs de code du Soleil peuvent gérer des lignes plus longues. Ce qu’il faut faire avec l’emballage doit être le choix du consommateur de contenu, et non la responsabilité du créateur du contenu.

Existe-t-il (légitimement) de bonnes raisons pour adhérer à 79 personnages de cet âge?

206
pcorcoran

PEP-8 a notamment pour intérêt d'empêcher les gens de se disputer au sujet de règles de formatage sans conséquence et de continuer à écrire du code de bonne qualité, au format cohérent. Bien sûr, personne ne pense vraiment que 79 est optimal, mais il n'y a aucun avantage évident à le changer en 99 ou 119 ou quelle que soit la longueur de votre ligne préférée. Je pense que les choix sont les suivants: suivez la règle et trouvez une cause valable à défendre, ou fournissez des données qui montrent comment la lisibilité et la productivité varient en fonction de la longueur de la ligne. Ce dernier serait extrêmement intéressant et aurait une bonne chance de changer les mentalités, je pense.

106
user97370

Garder votre code lisible par l'homme et pas seulement par la machine. De nombreux appareils ne peuvent toujours afficher que 80 caractères à la fois. En outre, il est plus facile pour les utilisateurs d’écrans plus grands d’effectuer plusieurs tâches en configurant plusieurs fenêtres côte à côte.

La lisibilité est également l’une des raisons de l’indentation de ligne forcée.

105
Justin Bozonier

Je suis un programmeur qui doit traiter quotidiennement beaucoup de code. Open source et ce qui a été développé en interne.

En tant que programmeur, il me semble utile d’avoir plusieurs fichiers source ouverts en même temps et d’organiser souvent mon bureau sur mon moniteur (écran large) afin que deux fichiers source soient côte à côte. Je pourrais programmer dans les deux cas, ou simplement en lire un et programmer dans l’autre.

Je trouve cela frustrant et frustrant lorsqu'un de ces fichiers source a une largeur supérieure à 120 caractères, car cela signifie que je ne peux pas insérer facilement une ligne de code sur une ligne d'écran. Cela dérange le formatage pour le retour à la ligne.

Je dis "120" parce que c'est le niveau qui m'énerverait si le code était plus large que. Après autant de caractères, vous devriez séparer les lignes pour plus de lisibilité, sans parler des normes de codage.

J'écris du code avec 80 colonnes à l'esprit. C'est juste pour que quand je fuie sur cette limite, ce ne soit pas une si mauvaise chose.

40
Jerub

Je crois que ceux qui étudient la typographie vous diraient que 66 caractères par ligne sont supposés être la largeur la plus lisible en longueur. Malgré tout, si vous avez besoin de déboguer une machine à distance au cours d’une session SSH, la plupart des terminaux ont 80 caractères par défaut, 79 ajustements suffisants, essayer de travailler avec quelque chose de plus large devient vraiment pénible dans un tel cas. Vous serez également surpris par le nombre de développeurs utilisant vim + screen comme environnement quotidien.

36
Sean O Donnell

L'impression d'une police à espacement fixe aux tailles par défaut correspond à (sur du papier A4) 80 colonnes sur 66 lignes.

19
Josh

Voici pourquoi j'aime bien les 80 caractères suivants: au travail, j'utilise Vim et travaille sur deux fichiers à la fois sur un moniteur tournant à, je pense, 1680x1040 (je ne m'en souviens jamais). Si les lignes sont plus longues, j'ai du mal à lire les fichiers, même lorsque vous utilisez Word Wrap. Inutile de dire que je déteste traiter avec le code des autres, car ils aiment les longues lignes.

7
Casey

Étant donné que les espaces blancs ont une signification sémantique en Python, certaines méthodes de wrapping Word peuvent produire des résultats incorrects ou ambigus. Il est donc nécessaire de limiter les situations pour éviter ces situations. Une longueur de ligne de 80 caractères est standard depuis que nous utilisions des télétypes. Par conséquent, 79 caractères semblent être un choix plutôt sûr.

3
Chris Upchurch

Je suis d'accord avec Justin. Pour élaborer, les lignes de code trop longues sont plus difficiles à lire par les humains et certaines personnes peuvent avoir une largeur de console ne contenant que 80 caractères par ligne.

La recommandation de style vise à garantir que le code que vous écrivez puisse être lu par le plus grand nombre de personnes possible sur le plus grand nombre de plateformes possible et le plus confortablement possible.

1
Readonly

parce que si vous le faites au-delà de la 80e colonne, cela signifie que vous écrivez une ligne de code très longue et complexe qui en fait trop (et que vous devez donc refactoriser), ou que vous avez trop mis en retrait (et que vous devez donc refactoriser).

0
Stefano Borini