對於剛剛入門的小白來說常常聽到說什么解釋性語言和編譯性語言,靜態語言和腳步語言等,被弄的雲里霧里。我個人的感覺的語言沒有好壞和強弱之分,每種語言都有自己使用的范圍,沒有必要去強行去分出個一二三來。對於學習計算機編程,我們應該去了解一些基本的常識。通過這些常識更好學習計算機編程。
源代碼:采用某種編程語言編寫的計算機程序,人類可讀
例如:result = 2 + 3 表示把2+3的運算結果賦給resule,這是我們可讀的
目標代碼:計算機可直接執行,人類不可讀(專家除外)
例如:11010010 00111011 目標代碼就是計算機可識別的二進制數
如何把人類可讀的源代碼變為機器可讀的目標代碼?
一種方式是編譯,一種方式是解釋。
編譯:將源代碼一次性轉換成目標代碼的過程。
編譯是一次性翻譯,之后不再需要源代碼(類似英文翻譯)
常用的.exe文件,就是經過編譯后的源代碼
解釋:將源代碼逐條轉換成目標代碼,同時逐條運行的過程
解釋是每次程序運行是隨翻譯執行(類似英文的同聲傳譯)
根據解釋和編譯兩種執行方式,編程語言分為靜態語言和腳本語言
靜態語言 使用編譯執行的編程語言(C/C++ Java)
腳本語言 使用解釋執行的編程語言(Python JavaScrept PHP)或者可以說是動態語言
靜態語言和腳本語言執行方式不同,但優勢各有不同
靜態語言:編譯器一次性生成目標代碼,優化更充分(程序運行速度更快)
腳本語言:執行程序時需要源代碼,維護更靈活(源代碼在維護l靈活、跨多個操作系統平台)