Magyar jelölés
A Wikipédiából, a szabad lexikonból.
A magyar jelölés egy elnevezési megállapodás a számítógép-programozásban. Ebben a jelölésrendszerben egy objektum neve feltünteti a típusát és a tervezett használatát is.
A magyar jelölést a C programozási nyelvben való használatra tervezték, melyben gyakorlatilag nincs korlátozás a különböző adattípusokkal történő műveletekre, és így a nyelv a véletlen típusokkal kapcsolatos hibáknak erősen ki van téve. A magyar jelölés ezt próbálja orvosolni, mégpedig úgy, hogy a programozónak világos képet ad a változó típusáról.
A magyar jelölésben a változó neve egy vagy több kisbetűs betűvel kezdődik, melyek emlékeztetnek a változó típusára vagy céljára; ezt követi a programozó által választott név. A megadott név nagy kezdőbetűs, hogy el legyen választva a típusjelölőktől.
[szerkesztés] Hasonló jelölések más programozási nyelvekben
Néhány programozási nyelvben hasonló jelöléseket építenek a nyelvbe. Például a BASIC-ben a name$ egy karakterláncot nevez meg, a count% pedig egy egész számot. A FORTRAN nyelvben az I-vel, J-vel vagy K-val kezdődő változók automatikusan egész számként vannak kezelve.
[szerkesztés] Példák
- nMéret: egész szám („number”)
- cAlma: elemek száma („count”)
- dwFényév: duplaszó („double word”)
- bElfoglalt: logikai („boolean”)
- pFoo: mutató („pointer”)
- szVezetéknév: nullával végződő karakterlánc („string” és „zero”)
- rgTanulók: tömb vagy tartomány („range”)
A mutatókra és tömbökre vonatkozó emlékeztető betűsort – melyek nem adattípusok – általában maga az adatelem típusa követi:
- rgfEgyensúly: lebegőpontos értékek tömbje („floating-point”)
- pszOwner: nullával végződő karakterláncra való mutató
Habár a magyar jelölés bármely programozási nyelvben és környezetben használható, a Microsoft Windowsra írt C nyelvre készült, és még mindig erősen erre a területre korlátozzák. Így sok gyakran látott magyar jelöléses betűsor Windows-specifikus:
- hwndFoo: egy ablak azonosítószáma („handle” és „window”)
- lpszBar: nullával végződő karakterláncra való hosszú mutató („long pointer”)
A magyar jelölést néha kiterjesztik a C++-ban, hogy tartalmazza a változó érvényességi tartományát – ezt egy aláhúzásjellel választják el:
- m_nKerekek: egy osztály tagja („member”), egész szám
[szerkesztés] Eredet
A magyar jelölést Simonyi Károly fia, Charles Simonyi programozó találta fel, aki korábban a Xeroxnál, majd a Microsoftnál dolgozott, később saját céget alapított. A név Simonyi magyar származásából ered, és így nevezik más nyelveken is (például angolul Hungarian notation, németül ungarische Notation).