Preštudujte si: Programovacie jazyky

Programovacie jazyky

Prekladače

Na základe predchádzajúcich riadkov ste už určite prišli k záveru, že jednou z najdôležitejších operácií, ktorá z napísaného programu vytvorí aplikáciu schopnú behu, je transformácia zdrojového kódu do kódu, ktorý dokáže procesor vykonať.
Aplikácia alebo časť aplikácie, ktorá túto operáciu realizuje, sa nazýva prekladač. V praxi poznáme dva typy prekladačov: kompilátor a interpreter.

Kompilátor pracuje tak, že zo zdrojového kódu vytvorí aplikáciu – spustiteľný súbor obsahujúci príkazy, ktoré dokáže procesor po jeho spustení okamžite vykonávať. Skompilovaný súbor nepotrebuje na svoj beh žiadne ďalšie odporné nástroje a možno ho spustiť ako samostatný program prakticky na ľubovoľnom počítači toho typu a s tým operačným systémom, na ktorom bol skompilovaný. Vykonávanie tohto typu programu je podmienené bezchybným zdrojovým kódom – ak kompilátor nájde chybu, zdrojový kód odmietne skompilovať.

Interpreter prekladá zdrojový kód po každom spustení programu príkaz po príkaze (interpreter príkaz prečíta, preloží a procesor ho vykoná). V prípade, že program obsahuje chybu, bude odhalená až vtedy, keď na ňu interpreter narazí.
Oproti kompilátoru sa vykonávanie realizuje podstatne pomalšie, pretože každý príkaz je potrebné prečítať, preložiť a až potom vykonať. Ďalšou nevýhodou je potreba umiestnenie interpretera na počítači, kde sa interpretovaný program vykonáva.
Vďaka čítaniu zdrojových kódov, ktoré obvykle predstavujú len textové reťazce je možné rovnaký zdrojový kód interpretovať a teda i vykonať na viacerých navzájom nekompatibilných zariadeniach (napr. počítač, PDA, mobilný telefón) alebo v rôznych operačných systémoch. Predpokladom je len existencia interpretera pre tieto zariadenia a operačné systémy.

Ďalšou výhodou je možnosť blokovania príkazov potenciálne nebezpečných (vírusy, spyware) pre dané zariadenie na úrovni interpretera, počas ich vykonávania. Ak interpreter narazí na nebezpečný príkaz, jednoducho ho nevykoná, nahradí iným alebo informuje používateľa. V prípade, že sa odhalia nové potenciálne hrozby, stačí aktualizovať interpreter a pokojne možno používať aj programy vytvorené pred odhalením nebezpečných príkazov.