Programmeerimiskeeled jagunevad tavaliselt kahte tüüpi keelteks - koostatud või tõlgitud keeled. Erinevus pole siiski keeles; see on juurutamisel. Pole vale öelda, et mõlemad on keele rakendamise omadused, kuid mitte keele enda omadused. Programmeerimiskeele rakendamine tähendab lõhe ületamist programmeerija kõrgetasemeliselt mõtlemiselt nulli ja masina nullile. Tõhusa töö korral saavad programmeerijad keskenduda tegelikele probleemidele, mitte masinate detailidele. Niisiis, programmeerimiskeelt saab koostamise põhjal tõlgendada või tõlgendada.
Mõlemal programmeerimiskeele tüübil on oma tugevused. Mõnes keeles on enne koodi käivitamist vaja kogu teie koodi kompileerimist. Muud keeled tõlgendavad iga juhist koodi täitmise ajal. Tegelikult kompileerib keeled programmeerija tavaliselt arvutis; kui programmeerija jagab tarkvara, jagab ta kompileeritud 0 ja 1, kuid mitte lähtekoodi. Tõlgendatud keele puhul salvestatakse kood samas vormingus, mille sisestasite, ja see tuleb tõlkida tööaja korral. Heidame pilgu koostatud ja tõlgendatud keelte üksikasjalikule võrdlusele.
Arvutid on võimelised täitma ainult masina keelt, mis on keskseadme (CPU) keel ja on väga lihtne. Mis tahes programmeerimiskeele rakendamise eesmärk on tõlkida lähteprogramm masinakeelde, nii et seda saaks CPU täita. Kõik keeleteostused tõlgivad lähteprogrammi enne vahepealse esituse tõlkimist masinakeelde mõneks vaheesituseks. Programmi masina keelde tõlkimise kõige otsesemat meetodit nimetatakse kompileerimiseks. Kompileeritud keeles kirjutatud programm tuleb enne selle käivitamist teisendada teisendatud vormingusse. Lähtekood tuleb enne täitmist muuta masinloetavateks juhisteks. Lühidalt, keeli, mille rakendused on tavaliselt kompilaatorid ja mitte tõlgid, nimetatakse kompileeritud keelteks.
Tõlk on programm, mis on kirjutatud mõnes muus keeles ja kompileeritud masinloetavasse keelde. Tõlk ise on masinkeelne programm ja ta on loodud tõlgendatud keele lähteprogrammide lugemiseks ja tõlgendamiseks. Tõlgendatud keel seevastu ei kompileeri lähtekoodi enne programmi käivitamist masinakeelde. See tõlgendab lihtsalt koodi lennult. Nii et te ei saa kompileerimisvigade eeliseid ega puudusi. Tõlgendatud keelte jaoks on vaja tarkvara, mida nimetatakse tõlkiks, mis võtab lähtekoodi ja täidab ühe käsu korraga. Tõlgendatud lähteprogrammi käivitamisel juhite tegelikult ka tõlki. Tõlk on masinkeelne programm, mis käivitab kõik tõlgitud keeles kirjutatud programmid.
- Kompileeritud keeles kirjutatud programm tuleb enne selle käivitamist teisendada teisendatud vormingusse. Lähtekood tuleb enne täitmist muuta masinloetavateks juhisteks. Tõlgendatud keel seevastu ei kompileeri lähtekoodi enne programmi käivitamist masinakeelde. See tõlgendab lihtsalt koodi lennult. Tõlgendatud keelte jaoks on vaja tarkvara, mida nimetatakse tõlkiks, mis võtab lähtekoodi ja täidab ühe käsu korraga.
- Kompileeritud keelte puhul on lähtekoodilt täitmisele jõudmiseks vähemalt kaks sammu, tõlgendatud keelte puhul aga ainult üks - täitmine. Tõlgendatud keeles kirjutatud programmi ei koostata - seda tõlgendab teine programm selle toimimise ajal. Koostatud keeles kirjutatud programm läbib protsessi, mille eesmärk on muuta selle inimloetava teksti vorming masinloetavaks. Programm nimega kompilaator teeb selle ülemineku.
- Kompileeritud programmid töötavad kiiremini kui tõlgendatud programmid, kuid tõlgendatud programme saab programmi töötamise ajal muuta. See muudab tõlgendatud programmid ideaalseks etendusprogrammide kirjutamiseks. Koostatud keeltega töötamine võib olla kena, kuna lähtekoodi kompileerimisel leitakse palju vigu. Need vead, mida nimetatakse kompileerimisvigadeks, takistavad koodi kompileerimist. Vastupidi, tõlgendatud keeli ei koostata, seega ei saa te koostamisvigadest eeliseid ega puudusi.
- Tõlgendatud keelte puhul toimub kogu silumine tööajaga. Ei ole ühtegi kompileerimisetappi, mille jooksul saaksite kõik oma koodi süntaksivigu välja visata; selle asemel peate programmi käivitama, et selles vigu leida. See muutub probleemiks, kui olete tõlgendanud, et programm muudab faile või muudab püsivaid ressursse. See raskendab mõne vea leidmist, kuna koodi pole vaja kompileerida. Tõlgendatud keeled tekitavad veebikeskkonnas ka teatavaid turvaprobleeme, kuna pahatahtlikku koodi võib sisestada täitmise keskele.
Lühidalt - nii koostatud kui ka tõlgendatud keeltel on oma tugevused. Mõnes keeles on enne koodi käivitamist vaja kogu teie koodi kompileerimist. Muud keeled tõlgendavad iga juhist koodi täitmise ajal. Peamine erinevus nende kahe vahel on see, et kompileeritud keeltega lähtekoodilt täitmisele jõudmiseks on vähemalt kaks sammu. Tõlgendatud keeltega on aga ainult üks samm - täitmine. Kompileeritud programmid töötavad kiiremini kui tõlgendatud programmid, kuid tõlgendatud programme saab programmi töötamise ajal muuta.