作者:蔡超凡
鏈接:https://www.zhihu.com/question/22443881/answer/48223449
來源:知乎
著作權歸作者所有,轉載請聯系作者獲得授權。
一、各自的定義
標記語言
標記語言,是一種將文本(Text)以及文本相關的其他信息結合起來,展現出關于文檔結構和數據處理細節的電腦文字編碼。與文本相關的其他信息(包括例如文本的結構和表示信息等)與原來的文本結合在一起,但是使用標記(markup)進行標識。
如:HTML、XML
腳本語言
腳本語言是為了縮短傳統的編寫-編譯-鏈接-運行(edit-compile-link-run)過程而創建的計算機編程語言。它的命名起源于一個腳本“screenplay”,每次運行都會使對話框逐字重復。早期的腳本語言經常被稱為批量處理語言或工作控制語言。
一個腳本通常是解釋運行而非編譯。腳本語言通常都有簡單、易學、易用的特性,目的就是希望能讓程序員快速完成程序的編寫工作。
如:JavaScript、VBScript、PHP
編譯型語言
編譯型語言:程序在執行之前需要一個專門的編譯過程,把程序編譯成 為機器語言的文件,運行時不需要重新翻譯,直接使用編譯的結果就行了。程序執行效率高,依賴編譯器,跨平臺性差些
如 C、C++
二、區別
1、標記語言不用于向計算機發出指令,常用于格式化和鏈接。
2、腳本語言介于標記語言和編程語言之間,腳本語言腳本語言不需要編譯,可以直接用,由解釋器來負責解釋。
3、編譯型語言寫的程序執行之前,需要一個專門的編譯過程,把程序編譯成為機器語言的文件,比如exe文件,以后要運行的話就不用重新翻譯了,直接使用編譯的結果就行了(exe文件),因為翻譯只做了一次,運行時不需要翻譯,所以編譯型語言的程序執行效率高。