|
Site |
Cours VB.net |
|
|
|
Annexe
Nommage des variables, objets et objets visuels. |
|
|
A- Nommage des variables et Objets:
Notation hongroise:
La notation hongroise est une convention de nommage qui met en avant, par l'utilisation d'un préfixe, des informations sur l'objet nommé.
La qualification de "hongroise" vient du pays d'origine de Simonyi, le créateur de ce nommage qui a travaillé chez Xerox puis Microsoft.
Il y a 2 sortes de notation hongroise:
Notation Apps:
On préfixe le nom des variables de manière a indiquer leur utilisation :
rwPosition : est une variable représentant la position d'une ligne (rw=row en anglais)
Notation Systems:
Cette notation consiste à faire précéder le nom de la variable d'un préfixe reflétant son type. Ce préfixe est toujours écrit en minuscule puis la première lettre suivante en majuscule.
Par exemple, la variable booléenne 'ouvert' est préfixée par un b pour indiquer un booléen : 'bOuvert'.
On peut préfixer avec le type et (ou) la portée.
Type:
i Integer (entier)
n Short int (entier court)
l Long (entier long)
f float= Single (nombre a virgule flottante)
d Double (float double)
c Char (caractère)
by Byte (caractère non signe)
b Boolean (booleen true/false)
s String (chaîne de caractères)
h Handle
file File (fichier)
On peut aussi utiliser k pour les constantes.
et non utilisé en VB:
v void
w word (mot = double octet)
dw double word (double mot)
sz zero-terminated string (chaine de caracteres terminee par un char zero)
str string object (objet String)
pt point
rgb rgb triplet
Portée:
g : variable globale à une application
s : variable locale à un module.
p : variable passée en paramètre d’une fonction ou d’une méthode de
classe.
Si une variable est un tableau, on ajoute le préfixe « a ».
Le nom de la variable commence par une majuscule.
Exemple:
Préfixe avec le type: variable nommée Ouvert de type boolean:
bOuvert.
Préfixe avec la portée, variable nommée Nom de portée globale:
gNom ou g_Nom
Variable nommée Position qui est une variable globale et une Integer.
g_iPosition
On voit qu'on peut utiliser ou non le caractère""_".
Cette notation hongroise a ses partisans et ses adversaires (nom trop complexe).
Choisir les noms de procédures et de variables avec soins:
On concatène plusieurs mots pour former un nom de fonction, de variable de Classe..
Il y a 3 manières d'utiliser les lettres capitales dans ces mots (on appelle cela la capitalisation!)
-Pascal Case:La première lettre de chaque mot est en majuscule:
CalculTotal()
-Camel Case:La première lettre de chaque mot est en majuscule, sauf la première:
iNombrePatient
-UpperCase: Toutes les lettres sont en majuscule:
MACONSTANTE
De plus le nom doit être explicite.
Microsoft propose quelques règles:
Sub , Fonctions
Utilisez la 'case Pascal' pour les noms de routine (la première lettre de chaque mot est une majuscule).
Exemple:
CalculTotal()Évitez d'employer des noms difficiles pouvant être interprétés de manière subjective, notamment
Analyse()pour une routine par exemple.Utilisez les verbe/nom pour une routine :
CalculTotal().Variables
Pour les noms de variables, utilisez la 'case Camel' selon laquelle la première lettre des mots est une majuscule, sauf pour le premier mot.
Exemple:
iNombrePatientnoter ici que la première lettre indique le type de la variable (Integer), elle peut aussi indiquer la portée(gTotal pour une variable globale).
Évitez d'employer des noms difficiles pouvant être interprétés de manière subjective,
'YYB8' ou 'flag'pour une variable.Ajoutez des méthodes de calcul (
Min,Max,Total) à la fin d'un nom de variable, si nécessaire.Les noms de variable booléenne doivent contenir
Isqui implique les valeurs True/False, par exemplefileIsFound.Évitez d'utiliser des termes tels que
Flaglorsque vous nommez des variables d'état, qui différent des variables booléennes car elles acceptent plus de deux valeurs. Plutôt quedocumentFlag, utilisez un nom plus descriptif tel quedocumentFormatType.Même pour une variable à courte durée de vie utilisez un nom significatif.
Utilisez des noms de variable d'une seule lettre, par exemple
iouj, pour les index de petite boucle uniquement.Paramètre
Pour les noms de paramètres, utilisez la 'case Camel' selon laquelle la première lettre des mots est une majuscule, sauf pour le premier mot.
Exemple:
typeNameConstantes
Utiliser les majuscules pour les constantes: MYCONSTANTE
N'utilisez pas des nombres ou des chaînes littérales telles que
For i = 1 To 7. Utilisez plutôt des constantes par exempleFor i = 1 To DAYSINWEEK, pour simplifier la maintenance et la compréhension.Objet, Classe
Pour les noms de Classe, utiliser le case Pascal:
Exemple Class MaClasse
Idem pour les évènement, espace de nom, méthodes:
Exemple: System.Drawing, ValueChange..
Dans les objets, il ne faut pas inclure des noms de classe dans les noms de propriétés Patient.PatientNom est inutile, utiliser plutôt Patient.Nom.
Les interfaces commencent par un I
Exemple: IDisposable
Pour les variables privées ou protégées d'une classe utilisez le case Camel:
Exemple: lastValue (variable protégée)
En plus pour les variables privées d'une classe mettre un "_" avant:
Exemple: _privateField
Pour une variable Public d'une classe utiliser le 'case Pascale':
Exemple TotalAge
Tables
Pour les tables, utilisez le singulier. Par exemple, utilisez table '
Patient'plutôt que 'Patients'.N'incorporez pas le type de données dans le nom d'une colonne.
Divers
Minimisez l'utilisation d'abréviations.
Lorsque vous nommez des fonctions, insérez une description de la valeur retournée, notamment
GetCurrentWindowDirectory().Évitez de réutiliser des noms identiques pour divers éléments.
Évitez l'utilisation d'homonymes et des mots qui entraînent souvent des fautes d'orthographe.
Évitez d'utiliser des signes typographiques pour identifier des types de données, notamment
$pour les chaînes ou%pour les entiers.Un nom doit indiquer la signification plutôt que la méthode.
B- Nommage des objets visuels:
Il est conseillé de débuter le nom d’un objet avec représentation visuelle (les formulaires, boutons, listes, textbox..)par un mot évoquant sa nature:
Microsoft conseille:
btn pour les Boutons
lst pour les ListBox
chk pour les CheckBox
cbo pour les combos
dlg pour les DialogBox
frm pour les Form
lbl pour les labels
txt pour les Textbox
tb pour les Toolsbar
rb pour les radiobutton
mm pour les menus
tmr pour les timers
Exemple:
btnOk par exemple pour un bouton sur lequel il y a 'Ok'.
|
|
|
|
|