Különbség a fordító és a tolmács között

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ó:

  1. A tolmács közvetlenül végrehajtja a kódot, míg a fordító nem
  2. Tolmácsnak elérhetőnek kell lennie a célgépen, míg a fordítónak nincs
  3. Az értelmezett program több platformon fog futni, míg az összeállított program nem
  4. Egy értelmezett program lassabban fog futni, mint egy összeállított program