Угорська нотація
Уго́рська нотація — метод найменування змінних в програмуванні, при якому до ідентифікатора змінної або функції додається префікс, що вказує на його тип. Автором є Чарльз Симоні.
Наприклад, префікс p додається до ідентифікаторів вказівників (англ. pointer), sz — до ідентифікаторів символьних рядків (англ. string), що закінчуються на нуль тощо.
Перевагою угорської нотації є системність, що полегшує читання програм і зменшує ймовірність неправильного використання змінної. Була популярна в 90-х серед програмістів Microsoft, де дана нотація була внутрішнім стандартом.
Недоліком є те, що при зміні типу змінної назва втрачає зміст і не вказує на тип змінної, що потребує введення нової змінної.
Префікси, що задають тип
| Префікс | Скорочення від | Сенс | Приклад |
|---|---|---|---|
| s | string | Рядок | sClientName
|
| sz | zero-terminated string | Рядок, обмежений нульовим символом | szClientName
|
| n, i | int | Цілочисельна змінна | nSize, iSize
|
| l | long | довге ціле | lAmount
|
| b | boolean | булева змінна | bIsEmpty
|
| a | array | масив | aDimensions
|
| t, dt | time, datetime | час і дата | tDelivery, dtDelivery
|
| p | pointer | Вказівник | pBox
|
| lp | long pointer | подвійний (дальній) вказівник | lpBox
|
| r | reference | посилання | rBoxes
|
| h | handle | дескриптор | hWindow
|
| m_ | member | змінна-член класу | m_sAddress
|
| g_ | global | глобальна змінна | g_nSpeed
|
| C | class | клас | CString
|
| T | type | тип | TObject
|
| I | interface | інтерфейс | IDispatch
|
| v | void | відсутність типу | vReserved
|
Як бачимо з прикладу, префікс може бути і складеним. Наприклад, для іменування рядкової змінної-члена класу може бути використана комбінація «m» та «s»: (m_sAddress).
Див. також
| Це незавершена стаття про мови програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |
| Це незавершена стаття про програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |
Джерело: стаття у Вікіпедії та історія редагувань (автори).