it-swarm-fr.com

Ma méthode ou mes noms variables sont-ils trop longs?

J'étais donc actuellement au milieu du codage, malheureusement pour moi, j'étais dans la zone "la zone" que je me suis dit, mes noms de méthode/variables à long terme?

[~ # ~] POP ​​[~ # ~ #] Hors de la zone que je vais!

Alors je suis venu ici pour demander, mes noms de méthode/variables trop longs? Tu es le juge! Bonus Pointes à quiconque peut comprendre ce que j'écris, même si je suis sûr qu'un gourou va le comprendre rapidement!

Quoi qu'il en soit, voici quelques-unes de mes méthodes et noms de variables.

Méthodes:

  • searchBlockedListForBlockedSquares(),
  • isCurrentSquareNextToAtLeastOneBlockedSquare(),
  • searchBlockedListForBlockedSquares()

Variables:

  • isNextToBlockedSquares

Je suppose qu'il n'y avait qu'une variable qui semblait trop longue.

15
Bryan Harrington

Vos noms semblent bien pour moi en termes de longueur. Cependant, la façon dont ils sont nommés suggère que certaines nouvelles classes sont-elles en ordre?

Par exemple, au lieu de searchBlockedListForBlockedSquares() Vous pouvez avoir blockedList.getBlockedSquares(). De même, isCurrentSquareNextToAtLeastOneBlockedSquare() devient currentSquare.isAdjacentToABlockedSquare().

32
Adam Lear

Je crois aux noms variables descriptifs même si cela signifie des noms de variables longs. Et d'intellensense deviennent plus populaires, je ne crois pas que cela affecte beaucoup beaucoup de productivité.

Je déteste les abréviations parce qu'elles sont presque impossibles à utiliser systématiquement. De plus, ils peuvent être ambigus et ils rendent les choses plus difficiles à lire. Même quand ils font partie d'une norme, je ne les aime pas. De plus, quand cela revient, ils ne supprime pas de nombreuses lettres à moins d'abréger beaucoup. Et abréger beaucoup tue la lisibilité.

Le principal problème des longs noms de long introduction est la quantité de longues lignes de code. Appeler une fonction avec un nom long et la transmission de deux ou trois noms de variables longs peuvent faire une longue ligne de code. À cause de cela, j'essaie de garder mes noms aussi courts que possible, mais je préfère avoir des noms descriptifs même si cela signifie des lignes d'emballage ou du défilement.

En regardant vos noms d'exemple, le fait que toute fin avec BlockedsQuares me fait penser que la partie du nom pourrait être redondante. En fait, cela pourrait également dire que ces éléments peuvent être encapsulés dans leur propre classe, probablement nommés BlockedsQuares. Ce changement qui rend les noms un peu plus court.

11
Jeff Siver

Un nom de variable est la mauvaise longueur lorsqu'il ne décrit pas clairement que c'est le but. Qui s'applique à être trop court ou trop long.

Les noms de variables courts et TERSE peuvent être ambigus ou pires n'ont aucune relation avec quelle est la variable. Dans le temps d'interprétation de base, nous étions limités par l'interprète à deux noms de caractère. Il était très difficile de proposer des noms significatifs dans un vaste programme. Les noms de variables à une seule lettre sont souvent utilisés pour les boucles et les compteurs, mais je pense qu'ils devraient être évités autrement. for (i = 0; i < 10; i++) {...} utilise i et c'est assez courant. j est un nom de variable secondaire.

Les longs noms de variables sont trop longs quand ils deviennent longs ou pleins de mots vides, ce qui les rendent plus longs que nécessaire. Si j'ai un tas de variables nommées de la même manière, je vais essayer d'éliminer les parties communes qui sont dispensables et de conserver les parties d'identification de manière unique des noms.

J'aurais nommé "isCurrentSquareNextToAtLeastOneBlockedSquare" à currentSquareNextToBlockedSquare?, si je le faisais dans Ruby.

6
the Tin Man