Notation hongroise

Notation hongroise

En programmation, la notation hongroise est une convention de nommage qui met en avant soit l'usage d'une variable, soit son type. Par exemple la variable booléenne danger est préfixée par un b pour indiquer un type booléen : bDanger. Autre exemple, la variable indexant un client, sera préfixée par un idx pour indiquer son usage : idxClient.

On distingue deux notations hongroises :

  • notation hongroise Apps
  • notation hongroise Systems

La première a été inventée par Charles Simonyi, programmeur chez Xerox puis architecte en chef au sein de Microsoft. Cette dernière a adopté ce style d'écriture et l'a transformé pour obtenir la notation Systems. La qualification de « hongroise » vient du pays d'origine de Simonyi.

Sommaire

Notation hongroise Apps

C'est l'idée de préfixer le nom des variables de manière à indiquer son utilisation :

  • rwPosition : variable représentant une ligne (row en anglais)
  • usName : variable représentant une chaîne de caractères non sûre (unsafe string en anglais)

Cette notation fut utilisée notamment dans le langage BCPL car il n'y avait alors d'autres types que les 'word' machine.

L'intérêt évident de cette notation est qu'elle prévient le développeur, par simple convention, de la possible erreur dans l'usage de ses variables, juste par la lecture du code. Ainsi, l'assignation de variable rwPosition = colOtherPosition signifie assigner une valeur de colonne (col) à une valeur de ligne (row).

Notation hongroise Systems

Cette notation utilisée couramment 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. Ce qui donne :

 short nIndex;
 char cChar;
 float* pfVal;

Évidemment, il ne faut pas en abuser sinon elle devient inutile. Ex. :

  • arpszTableau pour un tableau de pointeurs de chaînes de caractères.
prefixes        description
i               int (entier)
n               short int (entier court)
l               long int (entier long)
f               float (nombre a virgule flottante)
d               double (float double)
c               char (caractere)
by              byte (caractere non signe)
b               boolean (booleen true/false)
s               string (chaine de caracteres)
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)
h               handle
pt              point
rgb             rgb triplet
f               file (fichier)
fd              file descriptor (descripteur/pointeur de fichier)
v               void
modificateurs   description
u               unsigned (non signe)
p               pointer (pointeur)
a ou ar         array (tableau)
m_              member variable (variable membre)
g_              global variable (variable globale)
s_              static variable (variable statique)

Microsoft a introduit deux coutumes pour la notation hongroise Systems : utiliser trois caractères au lieu d'un pour qualifier une variable ou une constante, et commencer chaque nom par une majuscule au sein d'un mot comportant plusieurs noms.

Exemple (VBScript 5.6) :

On Error Resume Next
strComputer = "fictional"
strPrinter = "TestPrinter"
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
If Err = 0 Then
 WScript.Echo "No error binding to " & strComputer
 strPrinter = "TestPrinter"
 Set objPrinter = objWMIService.Get("Win32_Printer.Name='" & strPrinter & "'")
 If Err = 0 Then
   WScript.Echo "No error connecting to " & strPrinter
 Else
   call DisplayErrorInfo
 End If
Else
 call DisplayErrorInfo
End If
WScript.Quit 0
'******************************************************************************
Sub DisplayErrorInfo

 WScript.Echo "Error:      : " & Err
 WScript.Echo "Error (hex) : &H" & Hex(Err)
 WScript.Echo "Source      : " & Err.Source
 WScript.Echo "Description : " & Err.Description
 WScript.Quit 1

End Sub

Références

Voir aussi


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Notation hongroise de Wikipédia en français (auteurs)

Игры ⚽ Нужно сделать НИР?

Regardez d'autres dictionnaires:

  • Notation — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. Sur les autres projets Wikimedia : « Notation », sur le Wiktionnaire (dictionnaire universel) La Notation est le fait de représenter, de… …   Wikipédia en Français

  • Défense hongroise — Cet article utilise la notation algébrique pour décrire des coups du jeu d échecs …   Wikipédia en Français

  • Convention De Nommage (Programmation) — Une convention de nommage dans la programmation informatique est un ensemble de règles destinées à choisir la séquence de caractères à utiliser pour les identifiants dans le code source et la documentation. Les raisons pour lesquelles on utilise… …   Wikipédia en Français

  • Convention de nommage (programmation) — Une convention de nommage dans la programmation informatique est un ensemble de règles destinées à choisir la séquence de caractères à utiliser pour les identifiants dans le code source et la documentation. Les raisons pour lesquelles on utilise… …   Wikipédia en Français

  • Conventions de nommage — Convention de nommage (programmation) Une convention de nommage dans la programmation informatique est un ensemble de règles destinées à choisir la séquence de caractères à utiliser pour les identifiants dans le code source et la documentation.… …   Wikipédia en Français

  • Conventions de nommage (programmation) — Convention de nommage (programmation) Une convention de nommage dans la programmation informatique est un ensemble de règles destinées à choisir la séquence de caractères à utiliser pour les identifiants dans le code source et la documentation.… …   Wikipédia en Français

  • Convention de nommage — Une convention de nommage dans la programmation informatique est un ensemble de règles destinées à choisir la séquence de caractères à utiliser pour les identifiants dans le code source et la documentation. Les raisons pour lesquelles on utilise… …   Wikipédia en Français

  • Notations infixée, préfixée, polonaise et postfixée — Les notations infixée (ou infixe), préfixée (ou préfixe) et postfixée (ou postfixe) sont des formes d écritures d expressions algébriques qui se distinguent par la position relative qu y prennent les opérateurs et leurs opérandes. Un opérateur… …   Wikipédia en Français

  • Prefixe — Préfixe Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom …   Wikipédia en Français

  • Préfixe — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. Sur les autres projets Wikimedia : « Préfixe », sur le Wiktionnaire (dictionnaire universel) Le mot préfixe est employé dans plusieurs… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”