Compiler vs Tolmács
Ha magas szintű nyelven ír programot, a számítógép nem fogja megérteni. Ahhoz, hogy használható legyen, konvertálnia kell valami, amit a számítógép megért. Itt fordulnak fordítók és tolmácsok, mivel mindkettő ugyanazt a funkciót látja el. A fordító és az értelmező közötti fő különbség az, amikor a kódot végrehajtják. Tolmács esetén a kódot azonnal végrehajtják, és a tolmács továbbítja az értelmezett kódot a számítógéphez. Összehasonlításképpen: egy fordító nem hajtja végre a kódot. Ehelyett a kész kódot írja a lemezre. A lemezre írt kód ezután bármikor végrehajtható.
A fő különbség az értelmező és a fordító között egy újat eredményez. Mivel egy program futtatásakor tolmácsra van szükség, telepítenie kell egy tolmácsot, ha a programot a számítógépen szeretné végrehajtani. A fordítóval nem ez a helyzet. Miután a program lefordult, csak a lefordított programra van szüksége, nem pedig a fordítóra vagy az eredeti kódra.
A fordító helyett értelmező használatának előnye, hogy a program különböző operációs rendszereket futtató számítógépeken futtatható; mivel van a megfelelő tolmács. Egy program lefordításakor csak egy adott operációs rendszerre vonatkozna, és másokon nem fog futni. Ahhoz, hogy egy másik operációs rendszeren futhasson, optimalizálnia kell a kódját az adott operációs rendszerhez, és újra le kell fordítania.
A tolmács használatának hátránya a hozzáadott összeg. Egy tolmácsnak valamilyen feldolgozási teljesítményre lenne szüksége, és minden kódsor értelmezése futási idő alatt történik. Ez nem igaz a fordított programmal, mert az operációs rendszer közvetlenül tudja olvasni és végrehajthatja az egyes parancsokat. A kód értelmezésének egy további lépése miatt az értelmezett program lényegesen lassabban fut, mint a fordított kód. A tolmács nem lenne képes kihasználni az operációs rendszerre jellemző optimalizációkat, amelyek lehetővé teszik egy összeállított program hatékonyabb futtatását.
A fordító és a tolmács közötti választás attól függ, hogy szeretné-e hordozhatóságát vagy teljesítményét.
Összefoglaló: