脚本起源和分类

关于起源

   脚本,应该分为两种,一种是影视文学的脚本,还有一种则是计算机编程中的脚本。

   影视文学中应该是剧本,和脚本什么关系?其实我也不清楚,不过我觉得,脚本是剧本的来源,脚本是文学创造中产生的,而剧本则是根据影视的需要,在脚本的基础进行了加工,从而形成了影视剧本喽。

另一种就是计算机编程中的脚本语言了。脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言,

既然已经有了高级语言,那么为什么还要再使用脚本语言呢?因为脚本通常都直接解释运行而非编译,而且可以使开发者能够快速开发出计算机程序,完成复杂的计算机工作。相对于C,C++,Java等的系统编程语言而言,脚本语言具有简单、易学、易用的特性,同时它还具有以下特点: 

   1、语法和结构通常比较简单;

   2、学习和使用通常比较简单;

   3、通常以容易修改程序的“解释”作为执行方式,而不需要“编译”;

   4、程序的开发产能优于执行效能。

   脚本能够和其他语言模块很好的进行通信,因此通常它可以把各种不同的已有组件连接起来以完成相关任务。

脚本分类

Shell脚本

   此类脚本用于自动化工作控制,即启动和控制系统程序的行为。大多的脚本语言解释器也同时是命令行界面,如Unix shell和MS-DOS COMMAND.COM。其他如AppleScript,可以为系统增加脚本环境,但没有命令行界面。

GUI脚本

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

应用程序定制的脚本语言

   许多大型的应用程序都包括根据用户需求而定制的惯用脚本语言(如VBA)。同样地,许多电脑游戏系统使用一种自定义脚本语言来表现NPC(non-player character,non-playable character,non-player class)和游戏环境的预编程动作。

   此类语言通常是为一个单独的应用程序所设计,虽然它们貌似一些通用语言(如QuakeC, modeled after C),但它们有自定义的功能。

Web编程脚本

   应用程序定制的脚本语言中有一种重要的类别,用于提供WEB页面的自定义功能(如CodeFusion)。它专业处理互联网通信,使用网页浏览器作为用户界面。当然,大多现代WEB编程语言都比较强大可以做一些通用编程。

文本处理脚本

   处理基于文本的记录是脚本语言最早的用处之一。如Unix's awk最早是设计来帮助系统管理员处理调用UNIX基于文本的配置和LOG文件。PERL最早是用来产生报告的,现在它已经成了全面成熟的语言。

通用动态语言

   一些语言,比如PERL,从一门脚本语言发展成了更通用的编程语言。由于“解释执行,内存管理,动态”等特性,它们仍被称为脚本语言。但它们已经用于应用程序编写,用户也不把它们看作脚本语言。这种通用动态语言也是最为常见的,包括了PHP、Python、Ruby、Lua等。

扩展/可嵌入语言

   少数的语言被设计通过嵌入应用程序来取代应用程序定制的脚本语言。开发者(如使用C等其它系统语言)包入使脚本语言可以控制应用程序的hook。这些语言和应用程序定制的脚本语言是同种用途,但优点在于可以在应用程序之间传递一些技能。

其他

   还有很多其他的脚本语言没有进行归类,这也可以看出脚本语言世界的纷繁庞杂。


 参考资料:

http://zh.wikipedia.org/wiki/脚本语言

Author:dulvyizhihua
原文地址:https://www.cnblogs.com/dulvyizhihua/p/1337520.html