sur un écran large, on peut facilement voir plus de 80 caractères à la fois, sans barres de défilement. Même linus torvalds considère que la limite de 80 caractères est obsolète .
oui, la limite de 80 caractères est-elle toujours pertinente en période de moniteurs à écran large?
coding-style
lesmana
la source
la source
Réponses:
Il existe plusieurs raisons de respecter une limite de 80 caractères (ou une limite de 74 caractères est encore mieux; cela permet au code de rester inférieur à 80 colonnes même lorsque des marqueurs diff et des citations d'e-mails sont ajoutés, si vous passez en revue le code listes de diffusion).
Même à l'ère des écrans larges, j'aime avoir plusieurs fenêtres ouvertes côte à côte, montrant différentes parties du code. Par exemple, un navigateur Web et un courrier électronique sont généralement ouverts sur un écran et deux fichiers et un terminal s'ouvrent côte à côte sur un deuxième moniteur. Si vous avez des lignes de plus de 80 colonnes, vous devez vous en occuper avec l’éditeur qui les entoure (ce qui est moche et rend le code plus difficile à naviguer), ou élargissez vos fenêtres de sorte que vous ne puissiez pas en afficher autant à l’écran à une fois que.
Même si vous n'éditez pas de cette façon, si vous utilisez un outil de comparaison côte à côte, vous apprécierez les fichiers dont la longueur de ligne est raisonnable, ce qui facilitera l'affichage de votre différence.
Il y a aussi un problème de densité de code. J'aime avoir beaucoup de contexte lors de la lecture du code. Il est beaucoup plus rapide de regarder d'une fenêtre à l'autre que de faire défiler. Si vous avez de très longues lignes, vous avez également tendance à avoir des lignes qui varient beaucoup en longueur, ce qui entraîne beaucoup de gaspillage d’écran et vous permet d’ajuster moins de code à l’écran à un moment donné.
Enfin, si vous avez de très longues lignes, cela signifie généralement que vous avez des lignes très compliquées, une indendation profonde ou des identificateurs très longs. Tout cela peut poser problème. Les lignes compliquées en font probablement trop; si vous pouvez le décomposer en plusieurs lignes plus simples, vous devriez probablement. Une indentation profonde signifie que vous imbriquez trop de boucles et de conditions, ce qui peut rendre le flux de votre code déroutant. envisager de refactoriser plusieurs fonctions. Et si vos identifiants sont trop longs, la lecture de votre code peut s'avérer très difficile. Les gens reconnaissent généralement les mots comme des unités individuelles; ils ne lisent pas chaque caractère un à un, mais examinent la forme générale du mot. Les identifiants longs sont plus difficiles à distinguer de cette façon et, s'ils sont aussi longs, ils contiennent des informations redondantes ou répétitives.
Maintenant, même s'il est toujours pratique de conserver le code en dessous de 80 colonnes, il ne s'agit pas d'une de ces règles à respecter scrupuleusement, en vous contournant pour adapter une ligne alors que ce n'est pas le cas. Je suggère que vous essayiez de garder tout votre code sous 80 colonnes, mais quand ça ne va pas, ne vous inquiétez pas trop.
la source
std::vector<...>::const_iterator
), bien que dans ce dernier cas, les choses puissent généralement être allégées par typedefs.Si mes lignes ne contiennent pas moins de 100 caractères, je peux avoir deux fenêtres d’éditeur côte à côte sur un moniteur à écran large. Il est très utile d'avoir à la fois le fichier d'en-tête de classe et l'implémentation visibles en même temps, ou d'avoir le code d'un côté qui appelle le code de l'autre. Et, si les lignes sont courtes, je n'ai pas besoin d'une barre de défilement horizontale dans la fenêtre de l'éditeur, ce qui me donne plus d'espace vertical.
80 caractères peuvent être obsolètes, mais il y a un intérêt à garder les choses dans les limites de la raison.
la source
Je ne pense pas que le moniteur ait quelque chose à voir avec cela - du moins plus maintenant.
Si vous ne pouvez pas coder une ligne de 80 caractères, c'est probablement un signe de mauvais code. Des expressions trop complexes. Indentation trop profonde. etc. Vous devriez arrêter et repenser ce que vous faites.
Mais si vous êtes certain que le code nécessite plus de 80 lignes, continuez et faites-le. Je pense qu'il est préférable d'avoir un code dépassant les 80 caractères plutôt que d'ajouter des modifications idiomatiques uniquement pour le rendre plus petit.
Personnellement, je déteste ce genre de choses:
Au lieu de simplement:
la source
Pour coder?
Oui, certainement. Un être humain normal ne sait pas lire trop large. Avec quelques colonnes, vous bougez moins les yeux, vous vous concentrez mieux et vous retardez la fatigue. C'est un gain minimum, mais important.
la source
Oui, il y a des raisons de limiter la longueur de la ligne de code:
Cela dit, 80, c'est un peu trop. Néanmoins, certaines limitations constituent probablement une bonne idée en tant que principe de conception.
Je dirais que les lignes très longues ne devraient pas être interdites, car elles sont parfois nécessaires. Mais si la plupart des fonctions ne sont visibles que sur un écran de 30 ", le code pose quelques problèmes.
la source
C'est arbitraire, mais il y a une limite non arbitraire à ce qui est facile à lire. Je trouve que les colonnes de texte très larges sont très difficiles à numériser et à lire, qu’il s’agisse de code ou de prose. De plus, comme de nombreuses autres réponses l'ont souligné, ce n'est pas comme si ce code allait être la seule chose à l'écran. Il est bon d'avoir deux fenêtres de code ou plus en même temps et de les placer sur un seul écran large.
la source
Il n’est probablement pas pertinent de choisir exactement 80 caractères; Qu'est-ce qui changerait si la limite était de 85, par exemple?
Il est vrai que les moniteurs utilisés aujourd'hui ont des résolutions plus élevées, mais dans un éditeur de texte / IDE, tout l'espace n'est pas pris dans la vue texte; Dans l'éditeur que j'utilise, on voit à gauche la liste des fichiers inclus dans le projet.
La résolution utilisée dans un netbook ou un ordinateur portable n’est pas la même que celle utilisée dans les moniteurs; il est probablement logique d'utiliser une limite de caractères qui ne crée pas de "problèmes" pour personne.
la source
Cela dépend vraiment de l'environnement de développement.
Par exemple, dans une grande entreprise comptant des milliers de développeurs, des centaines de personnes devront probablement, au cours de la durée de vie d'un produit, consulter une partie de son code. Avec autant de gens, il y en a forcément quelques-uns qui, pour une raison quelconque (vieux matériel, netbooks, etc.) fonctionnent à 800x600 ou moins. Il y a une certaine valeur à les accueillir.
Dans mon entreprise de 25 personnes, cependant, je dis que je le vis. Nous utilisons tous deux moniteurs modernes à la résolution maximale, soit 120-140 environ.
la source
Avoir une limite a du sens. Mais la limite de 80 caractères est trop contraignante. Je préfère quelque chose comme 96 caractères maximum. Il est suffisamment large pour la plupart des codes que je dois traiter et suffisamment étroit pour que deux fichiers puissent être mis côte à côte pour être différés (sur un écran large).
Je crois que la lisibilité du code l'emporte sur toutes les autres préoccupations. Et avec 96 caractères par ligne, le code peut être rendu beaucoup plus lisible qu'avec 80.
Je n'accepte pas l'argument voulant que la plupart des utilisateurs définissent leurs terminaux sur 80 caractères au maximum, mais non que les imprimantes doivent insérer des lignes de plus de 80 caractères. Ce n'est pas une limite difficile, comme c'était le cas dans le passé (lointain). Vous pouvez facilement définir le terminal et la largeur de l’imprimante sur 100 caractères.
la source
Non, ce n'est plus pertinent:
80 caractères était vraiment un guide pour les polices à largeur fixe dans un environnement de console.
Bien sûr, si vous utilisez toujours une police à largeur fixe dans un environnement de console ... alors, 80 caractères, c'est raisonnable :)
la source
Si vous utilisez un éditeur dans une interface utilisateur graphique, les 80 caractères par ligne ne sont pas pertinents, car la plupart des éditeurs décents - par exemple Notepad ++ - ont un bouton pour basculer le retour à la ligne. Avec cela, cela ne devrait pas être un problème, même lors de la visualisation du code dans une fenêtre mince.
la source