bool vrai = 0
bool faux = 1
Version imprimable
bool vrai = 0
bool faux = 1
Le pire nom de variable que j'ai vu c'était "yapma", ça veut dire "fait" en roumain. Si t'es pas roumain va comprendre "if yapma then" :)
Tiens ça me rappelle des classes fourre-tout que j'ai vu il y a 5/6 ans (attention c'est du java).
Code:
1
2
3
4
5
6
7
8
9 public class Bean5 { private Object objet1; private Object objet2; private Object objet3; private Object objet4; private Object objet5; //getters + setters... }
Je vous passe la suite, mais ça allait jusqu'au Bean20. :aie:Code:
1
2
3
4
5
6
7
8
9 public class Bean10 extends Bean5 { private Object objet6; private Object objet7; private Object objet8; private Object objet9; private Object objet10; //getters + setters.... }
Je vous laisse également imaginer le bordel que c'était pour savoir ce qu'il y avait dedans - je sais bien qu'il n'y avait pas de génériques en java 1.3 mais c'était déjà moche à l'époque...
Je sais que ce n'est pas vraiment le sujet du file, mais à propos de l'utilisation de sa langue maternelle pour nommer des identificateurs, si je n'ai fondamentalement rien contre cette pratique, je n'aime en revanche pas trop l'utilisation du français ou de toute autre langue dont l'alphabet comprend des signe diacritique si celui du langage de programmation de les supporte pas. Outre la laideur du français écrit sans accents, leur absence est vraiment susceptible de créer de la confusion.
De plus, j'aime avoir une certaine homogénéité dans le code et si l'équipe de développement est multiculturelle, le choix de l'anglais me paraît indiqué.
Pour ma part c'est les variables métasyntaxiques
'banania', dans le code du PABX4400 Alcatel :calim2:
moi je galère avec les nom invariables dans des tableau par exemple
Code:
1
2
3
4
5 $Cours = array(); foreach($Cours as $Cours) { }
une variable que je pense beaucoup de programmeur utilise la variable "toto" :lol:
"C’est comme si vous emballez vos biens dans des cartons de déménagement et vous les étiquetez le carton des matières"
Quelqu'un peut-il m'expliquer ce que cette phrase veut dire en français ? :mrgreen:
Ben juste que tu écris "Carton des matières" sur un côté du carton :p
Mais j'avoue que j'avais pas compris la phrase tout de suite non plus :D
Excusez moi mon chat a posté tout seul en mon absence en déformant mon message... Je recommence :
Un premier pas serait
Mais tu peux faire mieux que ça. La liste de cours a surement un sens fonctionnel. Exemple si ta liste des cours correspond aux cours dispensés par un prof :Code:
1
2
3
4
5 $listeCours = array(); foreach($listeCours as $cours) { }
PS : Dans la norme on commence plutôt un nom de variable par une minuscule et le nom d'une classe par une majuscule :)Code:
1
2
3
4
5 $coursDispenses= array(); foreach($coursDispenses as $coursDispense) { }
Si vous voulez rigoler un bon coup, jetez un œil au code source de J.
Voici un extrait de « rl.c » (ce nom de fichier annonce la couleur) :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 static F1(jtlchar){A y;B b,p=1,r1;C c,d,*u,*v;I j,k,m,n; RZ(w); m=AN(alp); n=AN(w); j=n-m; r1=1==AR(w); u=v=CAV(w); d=*v; if(0<=j&&r1&&!memcmp(v+j,AV(alp),m)){ if(!j)R cstr("a."); RZ(y=lchar(1==j?scc(*v):str(j,v))); R lp(y)?over(cstr("a.,~"),y):over(y,cstr(",a.")); } if(r1&&m==n&&(y=icap(ne(w,alp)))&&m>AN(y)){ if(1==AN(y))RZ(y=head(y)); R over(over(cstr("a. "),lcpx(lnum(y))),over(cstr("}~"),lchar(from(y,w)))); } j=2; b=7<n||1<n&&1<AR(w); DO(n, c=*v++; if(c==CQUOTE)++j; b&=c==d; p&=31<c&&c<127;); if(b){n=1; j=MIN(3,j);} if(!p){ k=(UC)d; RZ(y=indexof(alp,w)); if(r1&&n<m&&(!k||k==m-n)&&equ(y,apv(n,k,1L)))R over(thorn1(sc(d?-n:n)),cstr("{.a.")); RZ(y=lnum(y)); R lp(y)?over(cstr("a.{~"),y):over(y,cstr("{a.")); } GA(y,LIT,n+j,1,0); v=CAV(y); *v=*(v+n+j-1)=CQUOTE; ++v; if(2==j)MC(v,u,n); else DO(n, *v++=c=*u++; if(c==CQUOTE)*v++=c;); R over(b?lsh(w):lshape(w),y); } /* non-empty character array */
@spidermario : Ça c'est du code offusqué ^^
Des gens se sont posé la question et il semble que non.
Ce genre de pérégrinations sont purement subjectives / dépendantes du contexte
Avant de crier sur les variables locales, il est plus important de définir et formaliser le choix des identificateurs "non internes" comme le nom des méthodes publiques dans les classes
"data" pour une variable locale à une fonction/méthode ne me choque pas, ça pourrait être problématique si la portée était plus grande que le cadre de la fonction ou si dans la fonction il y avait beaucoup de traitements différents à la suite (auquel cas il serait bon de découper)
Il faut coder tout en gardant dans l'esprit que celui qui va maintenir ton code est un psychopathe qui connait ton adresse :aie:
perso j'aime la variable data
je fais meme
data est au pluriel heinCode:
1
2 foreach($data as $datum)
Le pire c'est la célébre variable i suivie de ++ dans le célébre :
Code:
1
2
3
4
5 for(int i=0; i<10; i++) { printf("%i\n",Price[i]); }
Ce cas ne me choque pas, si on le remplace par "indice" la lisibilité sera moins bonne. Plus la porté de la variable est courte, plus son nom n'a aucune raison d'être long. Si dans ton cas i est une variable globale (ce qui devrait être interdit), c'est une erreur, mais si elle est situé dans une fonction de 4 lignes je ne vois pas vraiment le problème. Comme toute rêgle de codage le bon sens doit l'emporter, cela me rappel la sacro sainte loi qui interdit l'utilisation des goto, en oubliant que dans le traitement d'erreur au sein d'une fonction cela peut, si c'est utilisé correctement, améliorer la lisibilité. Du reste un try catch n'est ni plus ni moins qu'un goto amélioré.
Pour ma part, ce qui me gène le plus ce sont les variable foo et bar que chaque code de démonstration en anglais utilise tout le temps.
Pourquoi ces codes de démo n'utilisent pas eux même des noms de variables explicites ?
En général le but de ces petits bouts de codes servent à expliquer comment coder qqchose, comment fonctionne une api, et donc sont le plus souvent à but éducatif.
Il semble donc évident, que pour comprendre un code éducatif, les variables doivent être avec nom éducatif.