Kääntäjä vs. tulkki
Kun kirjoitat ohjelmia korkean tason kielellä, tietokone ei pysty ymmärtämään sitä. Jotta se olisi käyttökelpoinen, sinun on muunnettava se jotain, jonka tietokone ymmärtää. Kääntäjät ja tulkit tulevat tänne, koska ne molemmat toimivat samalla tavalla. Tärkein ero kääntäjän ja tulkin välillä on, kun he suorittavat koodin. Tulkin kanssa koodi suoritetaan heti tulkin välittäessä tulkittavan koodin tietokoneelle. Vertailun vuoksi kääntäjä ei suorita koodia. Sen sijaan se kirjoittaa valmiin koodin levylle. Levylle kirjoitettu koodi voidaan sitten suorittaa milloin tahansa.
Tulkin ja kääntäjän välinen pääero kutee toisen. Koska tulkkia tarvitaan ohjelman suorittamisessa, tulkki on asennettava, jos haluat suorittaa ohjelman koneellasi. Näin ei ole kääntäjän tapauksessa. Kun ohjelma on käännetty, tarvitset vain käännetyn ohjelman eikä kääntäjää tai alkuperäistä koodia.
Tulkin käyttämisen kääntäjän sijasta etuna on kyky suorittaa ohjelma tietokoneissa, joissa on erilaisia käyttöjärjestelmiä; koska sinulla on sopiva tulkki. Kun käännät ohjelman, se on tarkoitettu vain tietylle käyttöjärjestelmälle, eikä se toimi muiden kanssa. Jotta se toimisi toisessa käyttöjärjestelmässä, sinun on optimoitava koodisi kyseiselle käyttöjärjestelmälle ja käännettävä se uudelleen.
Tulkin käytön haittapuoli on lisätty yläraja. Tulkki tarvitsee jonkin verran prosessointitehoa ja jokainen koodirivi tulkitaan suorituksen aikana. Näin ei ole silloin, kun sinulla on käännetty ohjelma, koska käyttöjärjestelmä voi lukea sen suoraan ja suorittaa jokaisen komennon. Koodin tulkinnan ylimääräinen vaihe tulkitsevan ohjelman ajaa huomattavasti hitaammin kuin käännetty koodi. Tulkki ei myöskään voisi hyödyntää käyttöjärjestelmäkohtaisia optimointeja, jotka voivat antaa kootun ohjelman suorittaa tehokkaammin.
Kääntäjän ja tulkin välinen valinta riippuu siitä, haluatko siirrettävyyden vai suorituskyvyn.
Yhteenveto: