`
universsky
  • 浏览: 91290 次
文章分类
社区版块
存档分类
最新评论

脚本语言:Shell , JavaScript、VBScript、Perl、PHP、Python、Ruby、Lua

 
阅读更多

脚本语言:Shell , JavaScript、VBScript、Perl、PHP、Python、Ruby、Lua

工作控制语言和shell

Shell 脚本
此类脚本用于自动化工作控制,即启动和控制系统程序的行为。大多的脚本语言解释器也同时是命令行界面,如Unix shell和MS-DOS command。其他如AppleScript,可以为系统增加脚本环境,但没有命令行界面。
具体分类有:
1.4NT
3.ARexx(Amiga Rexx)
4.bash
5.csh
6.DCL
7.JCL
8.ksh
9.Cmd.exe batch(Windows,OS/2)
10.command batch(DOS)
11.REXX
12.tcsh
13.sh
14.Winbatch
16.Windows Script Host
17.zsh

GUI 脚本

GUI出现带来一种专业的控制计算机的脚本语言。它在用户和图形界面,菜单,按钮等之间互动。它经常用来自动化重复性动作,或设置一个标准状态。理论上它可以用来控制运行于基于GUI的计算机上的所有应用程序,但实际上这些语言是否被支持还要看应用程序和操作系统本身。当通过键盘进行互动时,这些语言也被称为宏语言。
具体分类有:

应用程序定制的脚本语言

许多大型的应用程序都包括根据用户需求而定制的惯用脚本语言。同样地,许多电脑游戏系统使用一种自定义脚本语言来表现NPC(non-player character,non-playable character,non-player class)和游戏环境的预编程动作。
此类语言通常是为一个单独的应用程序所设计,虽然它们貌似一些通用语言(如QuakeC, modeled after C),但它们有自定义的功能。
具体分类:
1.Action Code Script
4.BlobbieScript
5.Emacs Lisp
6.Game Maker Language
8.IPTSCRAE
9.IRC script
10.Lingo
11.Matlab Embedded Language
12.Maya Embedded Language
13.mIRC script
14.NWscript
15.QuakeC
16.UnrealScript
17.Visual Basic for Applications
19.ZZT-oop

WEB编程脚本

应用程序定制的脚本语言中有一种重要的类别,用于提供WEB页面的自定义功能。它专业处理互联网通信,使用网页浏览器作为用户界面。当然,大多现代WEB编程语言都比较强大可以做一些通用编程。
具体分类:
1.ColdFusion(Application Server)
2.Lasso
3.Miva
4.SMX
5.IPTSCRAE-一些网络开发团队用于创建论坛的工具

文本处理语言

处理基于文本的记录是脚本语言最早的用处之一。如Unix's awk最早是设计来帮助系统管理员处理调用UNIX基于文本的配置和LOG文件。Perl最早是用来产生报告的,现在它已经成了全面成熟的语言。
具体分类:
1.Awk
2.Perl
3.sed
4.XSLT

通用动态语言

一些语言,比如Perl,从一门脚本语言发展成了更通用的编程语言。由于“解释执行,内存管理,动态”等特性,它们仍被称为脚本语言。但它们已经用于应用程序编写,用户也不把它们看作脚本语言。
1.APL
2.Dao
5.Lua
6.MUMPS(M)
[11]7.newLISP
8.Nuva
9.Perl
10.PHP
11.Python
12.Ruby
13.Scheme
15.SuperCard
16.Tcl(Tool command language)

扩展/可嵌入语言

少数的语言被设计通过嵌入应用程序来取代应用程序定制的脚本语言。开发者(如使用C等其它系统语言)包入使脚本语言可以控制应用程序的hook。这些语言和应用程序定制的脚本语言是同种用途,但优点在于可以在应用程序之间传递一些技能。
具体分类:
1.Ch(C/C++ interpreter)
2.Dao
3.ECMAScript亦称DMDScript,JavaScript,JScript
4.GameMonkeyScript
6.ICI
7.Lua
8.RBScript(REALbasic Script)
10.Tcl
11.Z-Script
JavaScript直到现在仍然是网页浏览器内的主要编程语言,它的ECMAScript标准化保证了它成为流行的通用嵌入性语言。
Tcl作为一种扩展性语言而创建,但更多地被用作通用性语言,就如同Python, Perl, Ruby一样。

其它

1.BeanShell(scripting for Java)
2.CobolScript
3.Escapade (server side scripting)
5.F-Script
6.Ferite
8.Gui4Cli
9.Io
10.KiXtart
12.Object REXX
13.Pike
14.Pliant
15.REBOL
16.ScriptBasic
17.Shorthand Language
18.Simkin
19.Sleep
20.StepTalk
21.Visual DialogScript

脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,用来控制软件应用程序,脚本通常以文本(如ASCII)保存,只在被调用时进行解释或编译。

脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。[1]它的命名起源于一个脚本“screenplay”,每次运行都会使对话框逐字重复。早期的脚本语言经常被称为批量处理语言或工作控制语言。[2]
一个脚本通常是解释运行而非编译。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序员快速完成程序的编写工作。而宏语言则可视为脚本语言的分支,两者也有实质上的相同之处。[3] 

特点

1、脚本语言(JavaScript,VBscript等)介于HTML和C,C++,Java,C#等编程语言之间。 HTML通常用于格式化和链接文本。而编程语言通常用于向机器发出一系列复杂的指令。  
2、脚本语言与编程语言也有很多相似地方,其函数与编程语言比较相像一些,其也涉及到变量。与编程语言之间最大的区别是编程语言的语法和规则更为严格和复杂一些.
3、与程序代码的关系:脚本也是一种语言,其同样由程序代码组成。
注:脚本语言一般都有相应的脚本引擎来解释执行。 他们一般需要解释器才能运行。Python、JAVASCRIPT,ASP,PHP,PERL,Nuva都是脚本语言。C/C++编译、链接后,可形成独立执行的exe文件。
4、脚本语言是一种解释性的语言,例如Python、vbscript,javascript,installshield script,ActionScript等等,它不象c\c++等可以编译成二进制代码,以可执行文件的形式存在,脚本语言不需要编译,可以直接用,由解释器来负责解释。  
5、脚本语言一般都是以文本形式存在,类似于一种命令
举个例子说:如果建立了一个程序,叫aaa.exe,可以打开.aa为扩展名的文件,为.aa文件的编写指定了一套规则(语法),当别人编写了.aa文件后,自己的程序用这种规则来理解编写人的意图,并作出回应,那么,这一套规则就是脚本语言。[5]
6、相对于编译型计算机编程语言:用脚本语言开发的程序在执行时,由其所对应的解释器(或称虚拟机)解释执行。系统程序设计语言是被预先编译成机器语言而执行的。脚本语言的主要特征是:程序代码即是脚本程序,亦是最终可执行文件。脚本语言可分为独立型嵌入型,独立型脚本语言在其执行时完全依赖于解释器,而嵌入型脚本语言通常在编程语言中(如CC++VBJava等)被嵌入使用。[1][6] 
7、和系统程序设计语言相比:不同是脚本语言是被解释而系统程序设计语言是被编译。被解释的语言由于没有编译时间而提供快速的转换,通过允许用户运行时编写应用程序,而不需要耗时的编译/打包过程。解释器使应用程序更加灵活,脚本语言的代码能够被实时生成和执行。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序设计师快速完成程序的编写工作

优缺点

优点
快速开发:脚本语言极大地简化了“开发部署测试调试”的周期过程。
容易部署:大多数脚本语言都能够随时部署,而不需要耗时的编译/打包过程。
同已有技术的集成:脚本语言被Java或者COM这样的组件技术所包围,因此能够有效地利用代码。
易学易用:很多脚本语言的技术要求通常要低一些,因此能够更容易地找到大量合适的技术人员。
动态代码:脚本语言的代码能够被实时生成和执行,这是一项高级特性,在某些应用程序里(例如JavaScript里的动态类型)是很有用也是必需的。[7]
缺点
脚本语言不够全面:它们会要求一门“真正的”编程语言的存在,必须找一个数据库驱动程序将其内置进脚本语言里。
脚本语言并不是软件工程和构建代码结构的最佳选择,例如面向对象和基于件的开发。
脚本语言通常不是“通用”语言,但是能够根据专门的应用来调整,例如:PHP万维网[7]

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics