Hatókör
Ez a szócikk nem tünteti fel a független forrásokat, amelyeket felhasználtak a készítése során. Emiatt nem tudjuk közvetlenül ellenőrizni, hogy a szócikkben szereplő állítások helytállóak-e. Segíts megbízható forrásokat találni az állításokhoz! Lásd még: A Wikipédia nem az első közlés helye. (2007 júliusából) |
A számítógép-programozásban a hatókör (angolul scope) alatt azt a kontextust értjük, amelyekben a változókat és a kifejezéseket értelmezzük. Az egyes nyelvekben többféle hatókör típussal találkozunk. A hatókör típusa határozza meg, hogy a változó milyen egyedeket tartalmazhat és hogy hogyan hat rájuk vagy a szemantikára.
A hatókör
- tartalmazhat deklarációkat vagy azonosítók definícióit.
- tartalmazhat utasításokat és/vagy kifejezéseket amelyek végrehajtható algoritmust vagy annak részét definiálják.
- lehet beágyazott, vagy tartalmazhat más elemeket.
A névtér olyan hatókör, amely a hatókör behatároló természetét kihasználva csoportosít logikailag rokon azonosítókat egyetlen azonosítóba. Ezáltal a hatókör befolyásolhatja a tartalmának névfeloldását.
Az egyes változóknak is megvan a maguk hatóköre. Az eltérő hatókörtípusoktól függ, hogy a helyi azaz lokális változók hogyan kötődnek. Ennek különböző hatásai lehetnek attól függően, hogy a nyelvben statikus vagy dinamikus a hatókörök kiosztása azaz statikus kötést ill. dinamikus kötést használ-e az adott nyelv.
A fejlesztők esetenként sorbehúzással adnak hangsúlyt a hatóköröknek a forráskódban a könnyebb olvashatóság érdekében, ill. egyes nyelvek esetén a behúzás nyelvi szinten is jelenti a hatókörök határát (pl. Python nyelv).