Notacja węgierska (ang. Hungarian Notation) – w programowaniu sposób zapisu nazw zmiennych oraz obiektów, polegający na poprzedzaniu właściwej nazwy małą literą (literami) określającą rodzaj tej zmiennej (obiektu).

Notację węgierską wymyślił Charles Simonyi, programista z Microsoft. Można spotkać się z takimi formatami zapisu nazw zmiennych:

iLiczba i_Liczba i_liczba

Przykład użycia notacji węgierskiej do nazywania zmiennych w C++: przedrostek znaczenie s string (łańcuch znaków) sz string (łańcuch znaków zakończony bajtem zerowym – null-em) c char (jeden znak), również const – wartość stała (szczególnie w przypadku użycia wskaźników) by byte, unsigned char n short i int x, y int (przy zmiennych określających współrzędne) cx, cy int (przy zmiennych określających rozmiar, długość) l long w word dw dword b boolean (wartość logiczna: prawda lub fałsz) f flaga fn funkcja h handle (uchwyt) p pointer (wskaźnik)

Charakterystyczne dla notacji węgierskiej (tworzące jej „węgierskie brzmienie”) są również złożenia przedrostków, zbliżone do składania morfemów gramatycznych z morfemami znaczeniowymi w języku węgierskim (i innych językach aglutynacyjnych).

przedrostek znaczenie lpcsz „długi” („daleki”) wskaźnik na stały ciąg znaków zakończony bajtem zerowym pfn wskaźnik na funkcję

Największą wadą tego systemu jest to, że jeśli chce się zmienić typ zmiennej, trzeba poprawiać nazwę w każdym miejscu występowania jej w programie.

Notację węgierską stosuje się także w celu zaznaczenia zasięgu zmiennej, np.: g_iZmienna - zmienna globalna, integer m_iZmienna - zmienna w strukturze lub klasie, integer m_Zmienna  - zmienna w strukturze lub klasie s_Zmienna  - zmienna statyczna klasy _Zmienna   - zmienna lokalna

Zobacz też PascalCase camelCase

Kategoria:Praktyki programistyczne