Typy premenných
Každá premenná má svoj dátový typ. Dátový typ určuje, aké hodnoty môže premenná obsahovať a ktoré operácie je s ňou možné vykonávať. Niektoré programovacie jazyky požadujú, aby bol typ premennej uvedený v programe, iné odvodzujú typ automaticky podľa priradenej hodnoty. Programovacie jazyky sa líšia tiež v tom, ktoré dátové typy ponúkajú. Medzi najbežnejšie dátové typy patria:
- celé číslo (
123,−7) – s číslami je možné vykonávať aritmetické operácie (1 + 2) a porovnávať ich (1 < 2) - desatinné číslo (
1,23,–0,05) – typicky sa používa tzv. „pohyblivá rádová čiarka“, čo umožňuje ukladať aj veľmi veľké alebo malé čísla, ale s obmedzenou presnosťou (napr. s 5 platnými číslicami je možné uložiť 123 450 000 aj 0,000 012 345, nie však 123,456) - logická (pravdivostná) hodnota (
pravda,nepravda) – reprezentuje informáciu o pravdivosti, dajú sa s nimi vykonávať logické operácie (neplatí x,x alebo y,x a y). (Tento typ sa často označuje ako „bool“ alebo „boolean“ podľa George Boola, ktorý popísal pravidlá pre výpočty s logickými hodnotami.) - textový reťazec (
“slovo”,“viac slov”) – reprezentuje text ľubovoľnej dĺžky. Na odlíšenie od názvov premenných sa typicky vymedzujú pomocí “úvodzoviek” alebo ‘apostrofov’. Je treba rozlišovať medzi reťazcom obsahujúcim číslo a číslom –“123”nie je123. (Tento typ sa často označuje ako „string“, z anglického slova pre reťazec.) - zoznam (pole) (
[1, 2, 3],[‘x’, ‘y’, ‘z’]) – umožňuje uložiť viac súvisiacich hodnôt do jednej premennej. (Často sú k dispozícii aj ďalšie typy na ukladanie rôznych kolekcií dát.)
Existujú ďalšie typy na špecifické účely (napr. čas, dátum, súbor). Väčšinou je tiež možné definovať si vlastné typy. Vymenovaný typ umožňuje definovať premenné, ktoré môžu nadobúdať iba niekoľko vopred určených hodnôt (napr. svetový smer, deň v týždni). Záznamy umožňujú definovať zložené premenné, ktoré sa skladajú z niekoľkých pomenovaných položiek (napr. záznam o zákazníkovi by mohol obsahovať jeho meno, vek a dátum posledného nákupu).
HorePomenovanie premenných
Mená premenných neovplyvňujú správanie počítača pri vykonávaní programu, sú však dôležité pre čitateľnosť kódu. Ak pomenujeme premennú celková_cena, neznamená to, že v nej bude automaticky uložený súčet cien položiek (to musíme zaistiť vhodnými príkazmi), je ale jasnejšie, čo má premenná reprezentovať, než keď ju pomenujeme c.
Veľkosť písmen hrá rolu
Väčšina programovacích jazykov rozlišuje veľké a malé písmená v menách, napr. Cena a cena sú dve rôzne premenné.
Povolené názvy
Premenné nie je možné pomenovať ľubovoľne. Konkrétne obmedzenia sa medzi programovacími jazykmi mierne líšia. Typické obmedzenia sú nasledujúce:
- Názvy môžu obsahovať iba písmená, číslice a podčiarkovníky. Keby sa premenná volala
a+b, nešlo by ju odlíšiť od operácie sčítanie. Číslicou sa ale názov nesmie začínať. Keby sa premenná volala12, nešlo by ju odlíšiť od hodnoty12. - Názvy nemôžu obsahovať medzery. Keby sa premenná volala
cena mrkvy, nešlo by ľahko poznať, či nejde o dve premenné (cenaamrkvy). Ak chceme viac slov, môžeme použiť napríklad podčiarkovník (cena_mrkvy). - Ako názov nie je možné použiť tzv. „rezervované slová“, ktoré už majú v programovacom jazyku určený význam (napr.
opakuj,alebo,pravda).
Povolené názvy v blokových jazykoch
V blokových programovacích jazykoch, ktoré majú samostatný blok pre premennú, tieto obmedzenia byť nemusia (pretože je jasné, že ide o názov premennej a kde sa tento názov začína a končí).
Konvencie
Rôzne programovacie jazyky majú navyše rôzne konvencie, ktoré podporujú jednotnosť kódu. Napríklad v jazyku Python sa názvy premenných píšu malými písmenami, po anglicky a viac slov sa oddeľuje podčiarkovníkom (napr. car_speed). Ide však iba o odporúčanie – program sa spustí, či už konvencie dodržujeme alebo nie.
Konvencie pre viacslovné premenné
Rôzne programovacie jazyky majú napríklad rôzne konvencie ako písať názvy premenných obsahujúce viac slov. Používané možnosti sú nasledujúce:
- vynechanie medzier (
cenamrkvy) - nahradenie medzier podčiarkovníkmi (
cena_mrkvy) – tzv. „hadia_notácia“ - nahradenie medzier spojovníkmi (
cena-mrkvy) – tzv. „špízová-notácia“ (menej časté, pretože spojovník sa používa na odčítanie) - vynechanie medzier a označenie začiatkov slov veľkým písmenom (
cenaMrkvy, príp.CenaMrkvy) – tzv. „ťaviaNotácia“ (veľké písmená v názve pripomínajú hrby ťavy)
Popisnosť
Popisné názvy výrazne uľahčujú čitateľnosť programu a znižujú riziko chýb. Príkaz celková_cena ← cena_mrkiev_1kg * kg_mrkvy je jasnejší než cena ← c * m a je tiež jasnejšie, že sú správne jednotky. Volíme také názvy, ktoré jednoznačne vyjadrujú účel premennej, aj za cenu dlhšieho názvu. Jednopísmenové názvy (napr. x) sú vhodné iba v obmedzených prípadoch (riadiaca premenná cyklu, súradnica bodu, krátke ukážky kódu).
Ďalšie odporúčania
- Používať názvy, ktorá sa dajú dobre vysloviť.
- Nepoužívať skratky (s výnimkou všeobecne známych).
- Nemať v programe dva názvy, ktoré sa líšia iba jedným znakom.
- Nemať v programe dva názvy, ktoré sa podobne vyslovujú.
- V rámci jedného kontextu nepoužívať jeden názov pre viac rôznych vecí (ani v prípade, že už na pôvodnú premennú odkazovať nepotrebujeme).