編譯型的語言
專門的編譯器, 針對(duì)特定的平臺(tái)(操作系統(tǒng))“翻譯”成機(jī)器碼(包括機(jī)器指令和操作數(shù)),并包裝成該平臺(tái)可執(zhí)行程序的格式诈唬;如需要其他的代碼,要進(jìn)行鏈接缩麸。
優(yōu)點(diǎn):可脫離開發(fā)環(huán)境铸磅,特定的平臺(tái)上獨(dú)立運(yùn)行,運(yùn)行速度快,代碼效率高阅仔,編譯后的程序不可修改吹散,保密性較好
缺點(diǎn):無法移植;需要移植八酒,要源代碼重新編譯 , 代碼需要經(jīng)過編譯方可運(yùn)行空民,只能在兼容的操作系統(tǒng)上運(yùn)行
代表語言: C/C++ , JAVA ,
解釋型語言
專門的解釋器對(duì)源程序每一行解釋成特定平臺(tái)的機(jī)器碼并立即執(zhí)行的語言;解釋型語言不會(huì)對(duì)整體性的編譯和鏈接處理羞迷,解釋型語言相當(dāng)于把編譯語言中編譯和解釋過程混合到了一起同時(shí)完成界轩。
優(yōu)點(diǎn):跨平臺(tái)較容易,是以犧牲程序執(zhí)行效率為代價(jià) , 可移植性較好衔瓮,只要有解釋環(huán)境浊猾,可在不同的操作系統(tǒng)上運(yùn)行
缺點(diǎn):效率較低,不能脫離解釋器獨(dú)立運(yùn)行 , 運(yùn)行需要解釋環(huán)境热鞍,運(yùn)行起來比編譯的要慢葫慎,占用資源也要多一些,代碼效率低薇宠,代碼修改后就可運(yùn)行幅疼,不需要編譯過程
代表語言:ruby Python Javascript