標籤:

什麼是腳本語言?


我想許多人並不是困惑腳本語言和非腳本語言的不同,而是困惑腳本語言為什麼叫腳本語言。腳本是由script翻譯來的,這個詞在用到計算機前的意思是劇本,現在把script還原到原有的意思——「劇本」來理解其在編程中的延伸意義。(腳與非腳的不同在於執行之前是否需要編譯)我們可以把「編譯」對應到製作電影時的「拍攝」,就是由源代碼生成可執行程序的過程。腳本語言不需要編譯,即這個劇本不需要拍攝成電影,一句一句「解釋」著執行就可以了。需要說明的是,雖然不需要編譯,但腳本語言和源代碼的意義不同。


狹義的腳本語言指為某一特定運行時環境服務的語言,如Bash,Javascript,廣義的腳本語言可用來指某些動態的高級語言,如Python、Perl。

按照普遍接受的定義,腳本語言是指支持腳本、支持為某一特定運行時環境編寫的程序、支持自動執行任務的編程語言。使用的場合常常是軟體、瀏覽器頁面、操作系統的shell等。腳本語言被視為專用語言,典型的例子如 用於Unix/類Unix系統的Bash;Web瀏覽器端的ECMAScript;Microsoft Office 系列的Visual Basic for Applications。

同時,有些編程語言最初是為某些特定的環境設計,後來卻慢慢發展成了通用語言,所以腳本語言也常常用來指Perl、Tcl、Python等動態的高級通用編程語言,譬如我們知道Python作為擴展語言是很常見的,在這種情況下「腳本」一詞指幾行到幾千行的小型程序。

反過來還有另一種情況,許多通用高級語言的「方言」也被用來當做腳本語言使用,譬如lisp的方言Emacs Lisp被運用在Emacs編輯器中,Visual Basic的方言Visual Basic for Applications被運用在Office系列產品中。


哈哈,最近剛剛了解了,什麼是腳本語言,語言可以分為兩類,編譯和解釋。編譯就是要把你的寫的程序先編譯一下,然後才能執行。解釋就是直接編運行,不需要編譯。大概就是這個意思了。希望對你們有幫助吧


不謙虛的說,回答的都是錯的。

腳本語言是讀一行執行一行、而無需關注下一行的語言,非腳本語言則是必須讀取整個源程序內容、建立完執行環境後執行的語言。


看了一直在3左側的回答,我覺得腳本是相對於劇本來講的,把拍電影這個動作比做編譯,劇本用來拍電影,而腳本是特效,配音等等,最終呈現出來的,也有腳本的一部分


推薦閱讀:

Lua 這個腳本語言一般都用來幹什麼,有什麼優點?
類似 Lua 的腳本語言為什麼不用編譯和連接呢?
腳本類語言真的方便嗎?
字元串在各類語言里是怎麼處理的?
為什麼 Win7 CMD 下執行兩條 copy 命令,其中一條會完整匹配擴展名而另一條不會?

TAG:腳本語言 |