See site in english Voir le site en francais
Website skin:
home  download  forum  link  contact

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

Author Topic: C++ Noms de variable... juste un truc  (Read 2176 times)

0 Members and 1 Guest are viewing this topic.

Offline DanSteph

  • Administrator
  • Legend
  • *****
  • Posts: 15410
  • Karma: 264
  • Hein, quoi !?
    • FsPassengers
19 March 2007, 13:55:52
Vu qu'on en parle du C++...

Il est très utile dans un prog d'adopter des conventions de nommage de nos variables,
la lisibilité est essentiel, ceux qui l'oublient ne vont pas très loin en général. Croyez moi
sur parole ca évite des heures et des heures en debogagge pénible.

Exemple une variable qui donne le nombre de tasse de thé:

D'abord les mauvaises habitude:

nbrt // dans 2 mois on ne sait plus ce que c'est
nbrtassedethe // pas très lisible, c'est quel type ? int bool handle ?

La bonne habitude:

iNombreTasseDeThe;

La premiere lettre nous donne le type (ici "i" pour integer) le nom est clair
et agréable à lire à cause des majuscules. Pour la première lettre
en général c'est:

b=bool
i=integer
f=float
d=double
h=handle

Le type est important quand on fait en runtime: nbrt=0.5 et qu'on passe des heures
a ce demander pourquoi elle est à zéro on aurais tout de suite remarqué avec
"iNombreTasseDeThe" que c'était un entier et qu'elle ne pouvait pas etre a 0.5

Petit exercice, vous reprennez votre programme six mois plus tard à cause d'un bug , à quoi servent
les valeurs suivantes ? :badsmile:

nbrgtm
rtehgt
dfptr


"dfptr" accepte t'il les valeurs float et "rtehgt" est t'il un handle ? A quoi servent ces variables ? :wonder:

Et celle la ?

hHandleSurMeshEnMemoire
iVoletSortiRentre
fCarburantReservoirPrincipal


Ne pas hésiter à faire long et explicite. Seulement pour les boucles for next ou les temporaires locales
on peut utiliser des i,a,c (for (a) Client[a]) etc. etc. (et encore pour les temporaires locales, méfiez vous)

Voila, pas grand chose mais avec ces bonne habitudes c'est des centaine d'heures de sauvées
la lisibilité d'un programme est cruciale...

if(bNommageDesVariablesIncorrecte==TRUE)
{
iGrosBugPourri++;
fDesespoirDuProgrammeur+=0.99f;
bAbandonDuProgramme=TRUE;
}


Mon record pour une variable je crois que c'est 70 caractères mais j'était d'humeur taquine... ;)

Dan



Message modifié ( 19-03-2007 14:07 )


Offline MartySpaceLines

  • Legend
  • ******
  • Posts: 1096
  • Karma: 0
Reply #1 - 19 March 2007, 17:51:45
j'avais pas pensé au type dans le nom...bonne idée!


@++

MSL  


Offline yoann

  • Legend
  • ******
  • Posts: 1914
  • Country: France fr
  • Karma: 9
Reply #2 - 19 March 2007, 17:54:47
ahhh, monsieur prof nous fait encore des cours, moi, je kiff grave. tu fait ca trop bien. grand bravo pour tes conseil.
 je suis encore en train d'aprendre le C, bientot le C++ . pas evident, mais quand on on a fini le lycee, e tque depuis
pas de tavaille (he oui, j'ai rien ait depuis aout 2007, just only 2 month of boite d'interim man-power et autre petits
job...) et bas que ca laisse du temps pour aprendre tou seul le C/C++ , mais que ca fait pas tout, et que tes conseil a
toi notre grand dan, ca aide
t'est un chef

:wor:
merci !!!


__________________________________
    Luke, je suis ton pere            kchuuu  pchiiiii

Offline DanSteph

  • Administrator
  • Legend
  • *****
  • Posts: 15410
  • Karma: 264
  • Hein, quoi !?
    • FsPassengers
Reply #3 - 19 March 2007, 18:07:28
Notez que c'est pas moi qui ai inventé ca, c'est des conventions d'écriture
héritée de la "notation hongroise" inventée par Simonyi on peut voir ici
pour référence: http://dominiquemaniez.developpez.com/Nothongroise/

Dan


Offline astro_seb

  • Legend
  • ******
  • Posts: 1444
  • Country: France fr
  • Karma: 2
Reply #4 - 19 March 2007, 19:21:03
Quote
yoann a écrit:
he oui, j'ai rien ait depuis aout 2007
Si, si! tu as inventé la machine à voyager dans le temps...


Bons vols à tous!
Vive l'astro en Provence

http://www.centre-astro.fr

Offline yoann

  • Legend
  • ******
  • Posts: 1914
  • Country: France fr
  • Karma: 9
Reply #5 - 19 March 2007, 23:42:49
Quote
astro_seb a écrit:
Quote
yoann a écrit:
he oui, j'ai rien ait depuis aout 2007
Si, si! tu as inventé la machine à voyager dans le temps...


ah euh oui oups pardon, qu'est que je peut etre distrai, j'ai inventé une Dolorean volante :badsmile::):):):):) sans
meme le faire expres...


« Last Edit: 19 March 2007, 23:42:49 by yoann »
__________________________________
    Luke, je suis ton pere            kchuuu  pchiiiii