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

pourquoi, dans ce millénaire, Python PEP-8 devrait-il spécifier une longueur de ligne maximale de 79 caractères?

à peu près tous les éditeurs de code sous le 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 de contenu.

y a-t-il (légitimement) de bonnes raisons d'adhérer à 79 personnages de cet âge?

167
demandé sur martineau 2008-09-18 04:36:24

10 réponses

une grande partie de la valeur de PEP-8 est d'empêcher les gens de se disputer au sujet des règles de formatage sans conséquence, et de continuer à écrire un bon code, toujours formaté. Bien sûr, personne ne pense vraiment que 79 est optimal, mais il n'y a aucun gain évident à le changer à 99 ou 119 ou quelle que soit votre longueur de ligne préférée est. Je pense que les choix sont les suivants: suivre la règle et trouver une cause valable pour se battre, ou fournir des données qui démontrent comment la lisibilité et la productivité varient avec la longueur de ligne. Ce dernier point serait extrêmement intéressant et aurait de bonnes chances de faire changer d'avis les gens, je pense.

87
répondu 2010-05-08 09:29:40

garder votre code lisible non seulement par machine. Beaucoup d'appareils ne peuvent encore afficher que 80 caractères à la fois. Il fait également plus facile pour les gens avec de plus grands écrans multi-tâche en étant capable de mettre en place plusieurs fenêtres côte à côte.

la lisibilité est également l'une des raisons pour lesquelles les lignes sont indentées.

94
répondu Justin Bozonier 2008-09-18 00:37:11

je suis un programmeur qui doit traiter beaucoup de code sur une base quotidienne. Open source et ce qui a été développé à l'interne.

en tant que programmeur, je trouve utile d'avoir beaucoup de fichiers source ouverts en même temps, et j'organise souvent mon bureau sur mon (écran large) moniteur de sorte que deux fichiers source sont côte à côte. Je pourrais programmer dans les deux, ou juste lire l'un et programmer dans l'autre.

je trouve décevant et frustrant que l'un des ces fichiers source ont une largeur >120 caractères, parce que cela signifie que je ne peux pas facilement ajuster une ligne de code sur une ligne d'écran. Ça perturbe le formatage de la ligne wrap.

je dis '120' parce que c'est le niveau auquel je serais ennuyé si le code était plus large que. Après cela de nombreux caractères, vous devriez être divisé en plusieurs lignes pour la lisibilité, encore moins les normes de codage.

j'écris du code avec 80 colonnes en tête. C'est juste pour que quand j'ai une fuite cette limite, c'est pas une mauvaise chose.

34
répondu Jerub 2008-09-18 00:44:24

je crois que ceux qui étudient la typographie vous diront que 66 caractères par ligne est censé être la largeur la plus lisible pour la longueur. Néanmoins, si vous devez déboguer une machine à distance au cours d'une session ssh, la plupart des terminaux par défaut à 80 caractères, 79 correspond juste, essayer de travailler avec quelque chose de plus large devient une vraie douleur dans un tel cas. Vous seriez également surpris par le nombre de développeurs utilisant l'écran vim + comme un environnement quotidien.

33
répondu Sean O Donnell 2009-04-19 02:05:33

L'impression d'une police monospacée aux tailles par défaut est (sur papier A4) de 80 colonnes sur 66 lignes.

18
répondu Josh 2008-09-18 00:47:09

79 caractères (en fait 72 caractères) est l'endroit où la plupart des lecteurs de messagerie texte linewrap. Ainsi le code découpé et collé dans un email est beaucoup plus lisible.

5
répondu Joe Shaw 2008-09-18 03:58:56

voilà pourquoi j'aime les 80 caractères avec: au travail j'utilise Vim et je 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 en utilisant word wrap. Inutile de dire que je déteste traiter avec le code des autres comme ils aiment les longues lignes.

4
répondu 2009-05-16 15:16:18

puisque whitespace a une signification sémantique en Python, certaines méthodes d'enrubannage de mots pourraient produire des résultats incorrects ou ambigus, il doit donc y avoir une limite pour éviter ces situations. Une longueur de ligne de 80 caractères a été standard depuis que nous utilisions les télétypes, donc 79 caractères semble être un choix assez sûr.

3
répondu Chris Upchurch 2008-09-18 00:39:19

parce que si vous le poussez au-delà de la 80e colonne cela signifie que soit vous écrivez une ligne de code très longue et complexe qui fait trop (et donc vous devriez reformuler), ou que vous avez indenté trop (et donc vous devriez reformuler).

2
répondu Stefano Borini 2009-04-19 11:22:25

Je suis D'accord avec Justin. Pour élaborer, des lignes de code trop longues sont plus difficiles à lire par les humains et certaines personnes pourraient avoir des largeurs de console qui ne peuvent accueillir que 80 caractères par ligne.

la recommandation de style est là pour s'assurer que le code que vous écrivez peut être lu par autant de personnes que possible sur autant de plateformes que possible et aussi confortablement que possible.

1
répondu Readonly 2008-09-18 00:40:22