❶ 腳本有哪幾類和編程語言什麼區別不同類的腳本怎麼區別
這個應該怎麼回答你呢,編程語言確實被分為腳本語言,標記語言,編譯語言,解釋語言,低級語言,高級語言等等。這些分類對於新手來說,往往會把它們搞亂。就好像一個未上過學的農民伯伯問你,什麼是網際網路,什麼是互聯網,什麼是萬維網,什麼是區域網,什麼是城域網一樣,你很難一下子說明清,讓他明白。
這種情況的原因,就在於,這些分類之間並不是嚴格互斥的,相互之間存在重疊和包容。就你的問題而言,腳本語言根本就沒有分類,你的意思可能是想問:腳本語言有哪些。說實話,太多了,其它那些很生僻的就不說了,就一個程序員時常要用到的就不少。平時用得較多的,大致有這些:Ruby,python,Shell,javascript,Perl,Awk,Sed,Expect,ActionScript,Lua,php等。硬要給這些腳本語言分類的話,只能按它們的用途來分,比如:系統腳本(如Shell,windows批處理),應用腳本,和一般性腳本。
腳本語言中腳本一詞,有配置,動態微調的意味。它最初的目的是為一些大型或超大型程序提供可實時編輯、可動態調整的特性。所以腳本語言的正統用途是把它們的解釋器嵌入到由編譯性語言如C,C++等寫的大型程序中(如瀏覽器,操作系統,大型游戲等),以解釋隨時可變的用戶腳本,提供更改這些大型程序特性,以達到用戶期望程序行為的目的。
一句話,腳本語言的正統使命,是一個中介者,提供用戶與其它大型程序之間的溝通橋梁。舉例來說,瀏覽器是一個完整的大型程序,它內嵌JavaScript解釋器,在運行期間動態解釋用戶的JavaScript腳本程序,以改變WEB頁面的行為,獲得各種頁面效果。同樣,操作系統(以linux為例),就自帶了shell解釋器,用戶通過發shell命令或使用shell腳本程序來獲得主機系統的各種信息(如cpu,內存,磁碟,進程等)。再如一些大型游戲(比如魔獸世界)也內嵌一些腳本語言的解釋器(通常是lua),實現一些與游戲的交互。大家熟悉的3DMax,Photoshop和autoCAD軟體都內嵌有一些腳本語言的解釋器,目的都一樣。
編譯性語言與腳本語言的主要區別在於,腳本是由解釋器逐行解釋執行的,而編譯性語言,則需要將源程序經編譯器編譯在可執行的計算機二進制代碼。然後再執行。其它效率相當高,速度也特別快。但缺點是需要先編譯,然後再執行。腳本語言的優勢在於它的動態性,可以即改即用。
但是有些腳本語言的功能很強大,遠超出了腳本最初的使命。首先,這些腳本語言的解釋器經過優化,速度也非常快;其次,這些語言本身的許多特性也很強大,完全可以開發一些獨立的大型程序。比如ruby,python,perl,php等。
最後,再回應你的最後一個問題:不同的語言對應不同的腳本這個問題,我不太明白你的本意。不同腳本語言,它們的語法肯定是不同的,不可能在語法上完全兼容,那樣的話,你的直觀感受就是,它們是同一個語言。
❷ 什麼是腳本語言和編程語言的區別
腳本語言泛指單用作簡單編程任務如shell scripts。腳本語言是一種介乎於 HTML 和諸如 JAVA 、 Visual Basic 、 C++ 等編程語言之間的一種特殊的語言,盡管它更接近後者,但它卻不具有編程語言復雜、嚴謹的語法和規則。 系統語言與腳本語言之間的區別有很多,但主要的區別是: 抽象的級別:這是最重要也是最明顯示的不同。腳本語言對程序員提供了更高級的抽象。這一點明顯表現在:在這種語言自身中,存在有高級的數據結構,如列表和字典結構,和對這種結構簡單方便的嵌套和操作。這樣可以創建非常成功的程序。 類型定義:系統語言通常是強類型和靜態類型定義。這就意味著所有變數的類型要在程序中指定,在編譯時檢查。相反地,腳本語言是最鬆散的類型定義,完全沒有類型聲明,並且在運行時進行動態類型檢查。 執行:系統語言的特點是編譯的。程序被編譯成可執行的二進制。另一方面,腳本語言的特點是解釋,也就是,指令被立即執行,不存在一個編譯的中間狀態。這就意味著腳本語言是互動式的(你可以在提示符下敲入命令,並且看到結果),這是另一個巨大的勝利。這樣完全將編譯過程從編輯-編譯-運行循環中去掉了。 速度:以上三點是腳本語言一方面在速度與效率, 一方面在易用性與表示式的強大性之間進行折衷的典型例子。這就使得腳本語言的執行速度比系統語言慢一個數量級。這就是對腳本語言誹謗最多的方面。性能的降低不是真正的問題,因為思想是用腳本語言來組合組件,這些組件是用象C 這樣的快速系統語言來編寫的。所以所有需要運行快速的東西將因為是用快速的語言實現的而運行得快速。腳本語言只用於將東西綁在一起,並且這些通常不是性能的瓶頸( 或如果是,你需要重新檢查你的設計)。
❸ 什麼是腳本語言它和編程語言有什麼區別
各種動態語言,如ASP、PHP、CGI、JSP等,都是腳本語言。
計算機語言總的來說可以分成機器語言,匯編語言,高級語言(就是你所想的程序語言,如:VB,C,C++,C#,JAVA,Dephi..)三大類。
腳本英文為Script。實際上腳本就是程序,一般都是有應用程序提供的編程語言。
應用程序包括瀏覽器(javascript、VBScript)、多媒體創作工具,應用程序的宏和創作系統的批處理語言也可以歸入腳本之類。
腳本同平時使用的VB、C語言的區別主要是:
1、腳本語法比較簡單,比較容易掌握;
2、腳本與應用程序密切相關,所以包括相對應用程序自身的功能;
3、腳本一般不具備通用性,所能處理的問題范圍有限。
❹ 編譯性語言,解釋性語言和腳本語言的區別
一、翻譯和解釋的不同 翻譯的方式有兩種,一個是編譯,一個是解釋。 兩種方式只是翻譯的時間不同。編譯型語言寫的程序在被執行之前,需要一個專門的編譯過程,把程序編譯成為機器語言的文件,比如exe文件,以後要運行的話就不用重新翻譯了,直接使用編譯的結果就行了(exe文件),因為翻譯只做了一次,運行時不需要翻譯,所以編譯型語言的程序執行效率高。 解釋則不同,解釋性語言的程序不需要編譯,省了道工序,解釋性語言在運行程序的時候才翻譯,比如解釋性basic語言,專門有一個解釋器能夠直接執行basic程序,每個語句都是執行的時候才翻譯。這樣解釋性語言每執行一次就要翻譯一次,效率比較低。
二、腳本語言 ①腳本語言(JavaScript,VBscript等)介於HTML和C,C++,Java,C#等編程語言之間 HTML通常用於格式化和鏈結文本。而編程語言通常用於向機器發出一系列復雜的指令。 ②腳本語言與編程語言也有很多相似地方,其函數與編程語言比較相象一些,其也涉及到變數。與編程語言之間最大的區別是編程語言的語法和規則更為嚴格和復雜一些。 ③與程序代碼的關系:腳本也是一種語言,其同樣由程序代碼組成 註:腳本語言一般都有相應的腳本引擎來解釋執行。 他們一般需要解釋器才能運行。JAVASCRIPT,ASP,PHP,PERL都是腳本語言。C/C++編譯、鏈接後,可形成獨立執行的exe文件。 ④腳本語言是一種解釋性的語言 例如vbscript,javascript,installshield script等等,它不象c/c++等可以編譯成二進制代碼,以可執行文件的形式存在。腳本語言不需要編譯,可以直接用,由解釋器來負責解釋,不過每次都需要翻譯,執行速度慢。 ⑤腳本語言一般都是以文本形式存在,類似於一種命令 舉個例子說,如果你建立了一個程序,叫aaa.exe,可以打開.js為擴展名的文件。
你為.js文件的編寫指定了一套規則(語法),當別人編寫了.js文件後,你的程序用這種規則來理解編寫人的意圖,並作出回應.那麼,這一套規則就是腳本語言。
❺ 腳本語言和編程語言的區別
系統語言與腳本語言之間的區別有很多,但主要的區別是:
抽象的級別:這是最重要也是最明顯示的不同。腳本語言對程序員提供了更高級的抽象。這一點明顯表現在:在這種語言自身中,存在有高級的數據結構,如列表和字典結構,和對這種結構簡單方便的嵌套和操作。這樣可以創建非常成功的程序。
類型定義:系統語言通常是強類型和靜態類型定義。這就意味著所有變數的類型要在程序中指定,在編譯時檢查。相反地,腳本語言是最鬆散的類型定義,完全沒有類型聲明,並且在運行時進行動態類型檢查。
執行:系統語言的特點是編譯的。程序被編譯成可執行的二進制。另一方面,腳本語言的特點是解釋,也就是,指令被立即執行,不存在一個編譯的中間狀態。這就意味著腳本語言是互動式的(你可以在提示符下敲入命令,並且看到結果),這是另一個巨大的勝利。這樣完全將編譯過程從編輯-編譯-運行循環中去掉了。
速度:以上三點是腳本語言一方面在速度與效率, 一方面在易用性與表示式的強大性之間進行折衷的典型例子。這就使得腳本語言的執行速度比系統語言慢一個數量級。這就是對腳本語言誹謗最多的方面。性能的降低不是真正的問題,因為思想是用腳本語言來組合組件,這些組件是用象C 這樣的快速系統語言來編寫的。所以所有需要運行快速的東西將因為是用快速的語言實現的而運行得快速。腳本語言只用於將東西綁在一起,並且這些通常不是性能的瓶頸( 或如果是,你需要重新檢查你的設計)。
❻ 什麼是編譯性語言,解釋性語言和腳本語言
計算機不能直接理解高級語言,只能直接理解機器語言,所以必須要把高級語言翻譯成機器語言,計算機才能值型高級語言編寫的程序。
翻譯的方式有兩種,一個是編譯,一個是解釋。兩種方式只是翻譯的時間不同。編譯型語言寫的程序執行之前,需要一個專門的編譯過程,把程序編譯成為機器語言的文件,比如exe文件,以後要運行的話就不用重新翻譯了,直接使用編譯的結果就行了(exe文件),因為翻譯只做了一次,運行時不需要翻譯,所以編譯型語言的程序執行效率高。
解釋則不同,解釋性語言的程序不需要編譯,省了道工序,解釋性語言在運行程序的時候才翻譯,比如解釋性basic語言,專門有一個解釋器能夠直接執行basic程序,每個語句都是執行的時候才翻譯。這樣解釋性語言每執行一次就要翻譯一次,效率比較低。
什麼是腳本語言?
腳本語言(JavaScript,VBscript等)介於HTML和C,C++,Java,C#等編程語言之間。
HTML通常用於格式化和鏈結文本。而編程語言通常用於向機器發出一系列復雜的指令。
.腳本語言與編程語言也有很多相似地方,其函數與編程語言比較相象一些,其也涉及到變數。與編程語言之間最大的區別是編程語言的語法和規則更為嚴格和復雜一些.
與程序代碼的關系:腳本也是一種語言,其同樣由程序代碼組成。
註:腳本語言一般都有相應的腳本引擎來解釋執行。 他們一般需要解釋器才能運行。
JAVASCRIPT,ASP,PHP,PERL都是腳本語言。C/C++編譯、鏈接後,可形成獨立執行的exe文件。
腳本語言是一種解釋性的語言,例如vbscript,javascript,installshield script等等,它不象cc++等可以編譯成二進制代碼,以可執行文件的形式存在.
腳本語言不需要編譯,可以直接用,由解釋器來負責解釋。 5
腳本語言一般都是以文本形式存在,類似於一種命令.
舉個例子說,如果你建立了一個程序,叫aaa.exe,可以打開.aa為擴展名的文件.
你為.aa文件的編寫指定了一套規則(語法),當別人編寫了.aa文件後,你的程序用這種規則來理解編寫人的意圖,並作出回應.那麼,這一套規則就是腳本語言.
參考:http://www.cnblogs.com/yxnchinahlj/archive/2011/04/06/2006581.html
❼ 腳本語言和編程語言的區別是什麼
1、腳本語言:又被稱為擴建的語言,或者動態語言,是一種編程語言,用來控制軟體應用程序。
2、編程語言:一種計算機語言讓程序員能夠准確地定義計算機所需要使用的數據,並精確地定義在不同情況下所應當採取的行動。
二、特點不同
1、腳本語言:腳本通常以文本(如ASCII)保存,只在被調用時進行解釋或編譯。
2、編程語言:程序在運行時可以改變其結構,開發快速,接近自然語言,易於理解,更方便的代碼管理。
三、優缺點不同
1、腳本語言:腳本語言極大地簡化了「開發、部署、測試和調試」的周期過程。大多數腳本語言都能夠隨時部署,而不需要耗時的編譯/打包過程。
2、編程語言:任何編程語言的使用都需要確保編寫的程序能夠根據實際需要及時調整。因此,快速原型開發環境非常重要,在這種環境下,動態語言和相關庫的結合可以大大增強其優勢。
❽ 請問腳本語言和編程語言的區別
腳本不用編譯,是一個程序使用的一種批處理文件。。。又叫做宏。。。。。
很多腳本是不編譯的,都是某個程序在解釋他描述的行為然後執行,上邊寫讓他向東,他就向東,讓他向西他就詳細,不過復雜的腳本還是在解釋的時候進行了編譯,然後執行編譯後的代碼(但代碼可能是機器碼,也可能是他自己發明的更易於解釋的數據)。。。
無論是簡單腳本還是類似網頁的PHP,JS等高級腳本,他最大的特點就是不編譯,由第三方程序或插件來解釋運行,而變成語言則是正經的程序,可以獨立運行。。。這就是最大差別。。。
腳本最早應用是計算機最初沒有圖形界面,靠輸入指令來運行,但每次都輸入指令運行很麻煩,不如讓計算機自己去讀一個實現寫好大量命令的文件來執行更好,這就是腳本最初的形式。。。後來越來越復雜,和編程語言很相近了,但讓然是只能完成運行它的程序能夠執行的東西,不能隨意編造運行內容,比如你不能讓瀏覽器的腳本去開飛機。。。但你用編程語言可以編寫一個無人機程序。。。