客户端脚本语言和服务器脚本语言有什么区别?
客户端指的是浏览器,客户端脚本语言指的就是在浏览器中运行的脚本语言,比如JavaScript,是可以让别人看到代码的。
服务器脚本语言就是指在服务器上运行的脚本语言,比如PHP,ASP,JSP,也就是后台程序语言。
ASP有两个含义:一是英文Application Service Provider的缩写,意思是网络应用服务供应商;另一个是英文Active Server Page的缩写,是微软推出的一种动态网页技术。
Microsoft Active Server Pages 即我们所称的 ASP
,其实是一套微软开发的服务器端脚本环境, ASP 内含于 IIS 30 和 40
之中 , 通过 ASP 我们可以结合 HTML 网页、 ASP 指令和 ActiveX
元件建立动态、交互且高效的 WEB 服务器应用程序。有了 ASP
你就不必担心客户的浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通
HTML
中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
以下罗列了 Active Server Pages 所独具的一些特点:
1 使用 VBScript 、 Jscript 等简单易懂的脚本语言,结合 HTML
代码,即可快速地完成网站的应用程序。
2 无须 compile 编译,容易编写,可在服务器端直接执行。
3 使用普通的文本编辑器,如 Windows
的记事本,即可进行编辑设计。
4 与浏览器无关 (Browser Independence), 用户端只要使用可执行 HTML
码的浏览器,即可浏览 Active Server Pages 所设计的网页内容。 Active
Server Pages 所使用的脚本语言 (VBScript 、 Jscript) 均在 WEB
服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。
5Active Server Pages 能与任何 ActiveX scripting 语言相容。除了可使用
VBScript 或 Jscript 语言来设计外,还通过 plug-in
的方式,使用由第三方所提供的其他脚本语言,譬如 REXX 、 Perl 、
Tcl 等。脚本引擎是处理脚本程序的 COM(Component Object Model) 物件。
6Active Server Pages
的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。
7 可使用服务器端的脚本来产生客户端的脚本。
8 物件导向( Object-oriented )。
9ActiveX Server Components(ActiveX 服务器元件 )
具有无限可扩充性。可以使用 Visual Basic 、 Java 、 Visual C++ 、 COBOL
等编程语言来编写你所需要的 ActiveX Server Component 。 </p>
<p> ASP
的奇妙之处真是不胜枚举,下面就请各位系好安全带,我将带领大家进入
ASP 的梦幻世界。 </p>
<p> 首先,让我们来看看运行 ASP 所需的环境: <ul>
<li>Microsoft Internet Information Server version 30/40 on Windows NT Server </li>
<li>Microsoft Peer Web Services Version 30 on Windows NT Workstation </li>
<li>Microsoft Personal Web Server on Windows 95/98 </li>
</ul>
<p> 正如前文所述,与一般的程序不同, asp 程序无须编译, ASP
程序的控制部份,是使用 VBScript 、 Jscript
等脚本语言来设计的,当执行 ASP
程序时,脚本程序将一整套命令发送给脚本解释器 ( 即脚本引擎 )
,由脚本解释器进行翻译并将其转换成服务器所能执行的命令。当然,同其他编程语言一样,
ASP
程序的编写也遵循一定的规则,如果你想使用你所喜爱的脚本语言编写
ASP
程序,那么你的服务器上必须要有能解释这种脚本语言的脚本解释器。当你安装
ASP 时,系统提供了两种脚本语言: Vbsrcipt 和 Jscript ,而 Vbscript
则被作为系统默认的脚本语言。你也可以根据自己的喜好改变系统默认的脚本语言,关于如何改变系统默认的脚本语言请看《
<a href="asp1-1htm"><font color="#026BAA">在 ASP 中使用脚本语言</font></a>》一文。
ASP 本身并不是一种脚本语言,它只是提供了一种使镶嵌在 HTML
页面中的脚本程序得以运行的环境。但是,要学好 ASP
又必须掌握它的语法和规则。现在就让我们开始一步一步地认识并学习
Active Server Pages 。
ASP 程序其实是以扩展名为 asp 的纯文本形式存在于 WEB
服务器上的,你可以用任何文本编辑器打开它, ASP
程序中可以包含纯文本、 HTML 标记以及脚本命令。你只需将 asp
程序放在 WEB
服务器的虚拟目录下(该目录必须要有可执行权限),就可以通过
WWW 的方式访问 ASP 程序了。要学好 ASP
程序的设计,必须掌握脚本的编写,那么究竟什么是脚本呢?其实脚本是由一系列的脚本命令所组成的,如同一般的程序,脚本可以将一个值赋给一个变量,可以命令
WEB
服务器发送一个值到客户浏览器,还可以将一系列命令定义成一个过程。要编写脚本,你必须要熟悉至少一门脚本语言,如
VBScript 。脚本语言是一种介乎于 HTML 和诸如 JAVA 、 Visual Basic 、 C++
等编程语言之间的一种特殊的语言,尽管它更接近后者,但它却不具有编程语言复杂、严谨的语法和规则。如前所述
ASP 所提供的脚本运行环境可支持多种脚本语言,譬如: Jscript 、 REXX
、 PERL 等等,这无疑给 ASP 程序设计者提供了广泛的发挥余地。 ASP
的出现使得广大 WEB
设计者不必在为客户浏览器是否支持而担心,实际上就算你
在同一个 asp
文件中使用不同的脚本语言,你都无须为此担忧,因为所有的一切都将在服务器端进行,客户浏览器得到的只是一个程序执行的结果,而你也只需在
asp 中声明使用不同的脚本语言即可
脚本语言 有很多种,
一、浏览器中的脚本语言主要就是JavaScript了,之前还有过别的比如vbscript 以及 flash动画中用到的 ActionScript等。
二、非浏览器中的脚本语言,或者说是服务端的脚本语言,有的用在web服务器端,比如php,asp,JavaScript(也可以用在服务器)还有可以内嵌到应用程序中的,因为程序编译后是不容易改变的,如果想在程序编译好后需经常调整程序的行为,比如游戏服务器,经常会调整任务奖励,逻辑算法等的会在游戏服务端内嵌入脚本语言 lua等。
三、脚本语言还有很多很多,你提到的 cgi不是语言,这是一种扩展web服务器的方法吧,通过cgi提供程序可以让web服务器提供更多的功能,php就是通过cgi的方式提供给web服务器的,你也可以用c写一个cgi模块让web服务器去调用。
四、系统中也会有脚本语言,比如windows的 bat文件就是脚本语言编写,你用记事本写入命令,然后另存为bat文件 鼠标双击就可以执行,还有 vbs,linux也有自己脚本语言。
脚本语言就是 不用编译的语言,他是由解释器读一行执行一行的,性能很差但灵活性很高这就是他的特点,一般用在web,浏览器,或者用嵌入到c c++ c#等编译程序中来执行一些简单的需要经常变动逻辑配置。
与脚本语言不同的就是编译语言了,C C++ C# java 等这些 不编译是不能运行的,必须要将其编译为二进制或者是特定平台的中间码才能运行,java是语言也是平台可以说java运行在Java平台上(Java虚拟机),C#是语言运行在net或netcore平台。c c++直接编译为二进制运行。
ASP支持采用的脚本语言:
VBscript :基于Microsoft公司开发的visual Basic 语言的一个简化版本
Jscript:MicroSoft公司开发的基于ECMA 262 语言规范(ECMAScript 编辑器3)的一种实现。除了少数例外(为了保持向后兼容),JScript 完全实现了ECMA 标准。JScript 是一种解释型的、基于对象的脚本语言。 JScript 不是其他语言的精简版(例如,它只是与Java 有点模糊而间接的关系),也不是任何事物的简化。不过,它有其局限性。例如,您不能使用该语言来编写独立运行的应用程序,并且没有对读写文件的内置支持。此外,JScript 脚本只能在某个解释器或“宿主”上运行,如Active Server Pages(ASP)、Internet 浏览器或者Windows 脚本宿主
脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,用来控制软件应用程序,脚本通常以文本(如ASCII)保存,只在被调用时进行解释或编译。
脚本的编写都是采用某一种编程语言。如LoadRunnert测试工具用的C语言;WebLoadt测试工具用javaScript或者是接近编程语言的方式;Robot测试工具用SQABasic,一种类似于VB的语言;QTPt测试工具所用到的是VBScript。
WinRunnert测试工具所用到的是类C的语言。这些测试脚本的易读性相对较低,编写相对复杂, 当设备的功能需求发生变化时,测试脚本不易被维护。
常见的脚本语言有:Scala、JavaScript,VBScript,ActionScript,MAX Script,ASP,JSP,PHP,SQL,Perl,Shell,python,Ruby,JavaFX,Lua,AutoIt等。
扩展资料
1、脚本语言(JavaScript,VBscript等)介于HTML和C,C++,Java,C#等编程语言之间。HTML通常用于格式化和链接文本。而编程语言通常用于向机器发出一系列复杂的指令。
2、脚本语言与编程语言也有很多相似地方,其函数与编程语言比较相像一些,其也涉及到变量。与编程语言之间最大的区别是编程语言的语法和规则更为严格和复杂一些。
3、与程序代码的关系:脚本也是一种语言,其同样由程序代码组成。
4、脚本语言是一种解释性的语言,例如Python、vbscript,javascript,installshield script,ActionScript等等,它不像c\c++等可以编译成二进制代码,以可执行文件的形式存在,脚本语言不需要编译,可以直接用,由解释器来负责解释。
5、脚本语言以文本形式存在,类似于一种命令。
-脚本语言
-脚本
随着《魔兽世界》(以下简称wow)在世界范围内流行,脚本渐渐被人们所熟知。由于wow强大的自定义界面系统,Lua这一脚本语言一举成名。\x0d\\x0d\其实早在Lua脚本语言被大众所熟知以前,游戏业内人士就已经开始使用脚本来开发游戏了。我们熟悉的很多国内的网络游戏大都运用了脚本开发,比如网游的长青树“梦幻西游和《大话西游2就大量应用了脚本技术。特别是《大话西游2》,其实现基于Lua脚本游戏开发的时间要远早于《魔兽世界》。在脚本技术上,国内与国外其实是站在同一起跑线上的,并不存在什么差距,这也为国内游戏产业赶超国外游戏产业提供了强有力的技术保证。\x0d\\x0d\在单机游戏时代,脚本这个词几乎很少出现,那么,为什么在网络游戏时代它却成了业界的宠儿呢原因是多方面的。\x0d\\x0d\单机游戏时代,无论游戏主机还是PC机,它们的性能都非常低下,从而需要具有较高执行效率的编译型语言对机器的性能进行“压榨”。随着科技发展和硬件性能的不断提升,脚本逐渐被开发者所接受并利用,但这并不是脚本流行起来的决定性因素,真正的原因还在于游戏市场有这方面的需求。\x0d\\x0d\网络游戏时代的市场竞争激烈、变化莫测,如果延用单机时代一年半载才出一个新版本的开发方式,必然会被游戏行业激烈的市场竞争所淘汰。正是这种游戏市场需求旺盛和开发工具效率底下之间的矛盾,促使脚本语言迅速地发展起来。脚本的兴起使得传统编译型语言(asngC/C )的性能优势在硬件功效大幅攀升的今天已经不复存在。\x0d\\x0d\除了市场和硬件这两个因素之外,还有一点我们不能忽略。那就是用C/C 进行游戏开发的高成本和高项目风险。随着java/.net逐渐流行,学习C/C 编程语言的人越来越少,而网络游戏市场的需求却越来越庞大,在程序人才大量匮乏的情况下,造成了c,C 人才的高成本。即便是有能力雇佣大量C/C 程序员的公司,在开发游戏的过程中,也不能无视C/C 的高级特性和高度灵活性带来的高项目风险。C/C 是易学难精的编程语言,在开发大型项目的时候由于程序员的水平参差不齐,所以极易造成沟通不畅。不仅如此,c,C 滥用的高级特性也容易引入大量bug。正是由于这些原因,游戏公司开始在游戏中使用脚本,希望通过脚本来解决这些高成本、高风险的问题。\x0d\\x0d\二脚本的现状\x0d\\x0d\脚本不仅解决了c/C 无法解决的开发效率难题,还降低了开发的成本和风险。因此脚本技术在游戏业内蓬勃发展起来,并且已经成为游戏业中不可或缺的一环。纵观当前脚本技术现状,形势一片大好,不仅语言百家争鸣,而且书籍种类也越来越多;不仅在游戏业界开花结果,在web等其它应用领域也大放异彩。\x0d\\x0d\首先,我们来看看目前比较流行的脚本:Python、Lua、ruby和Erlang。Python和Lua是网络游戏开发的中坚力量;ruby凭借 rubyonrails的web开发框架的强劲力量,其在游戏业的发展前途亦不可小视;Erlang在高并发性上的原生优势吸引了无数追求高性能网游服务器的开发人员的目光。\x0d\\x0d\其次,我们来看看书籍方面。大家都知道,文字对语言的普及起到了催化剂的作用,甚至可以看作是语言的有机组成部分。Python经过基金会的多年经营而得到NASA、Google重用的原因,就是由于其相关书籍种类比较丰富;Ruby随着RoR的流行,这两年行情看好,书籍也出版得越来越多了;Erlang是典型的少众语言,但随着多核时代的来临和高并发网络应用的需求,Erlang有着光明的发展前景,现在>等书也已经在策划出版了;反观Lua,虽然目前越来越流行,但由于它晦涩的接口设计和缺乏大型应用的支持,使得相关书籍寥寥无几。\x0d\\x0d\最后,我们把焦点重新聚集到游戏开发行业中,其实不难发现,除了前文提到的《魔兽世界》和网易经典“西游系列”使用了脚本外,现在大多数比较流行的程序也都使用了脚本,如腾讯的QQgame))和搜狐的《天龙八部》等。不仅如此,现今的游戏引擎也都提供了脚本接口,无论是商业的unreal引擎还是开源的 OGRE,无一例外。\x0d\\x0d\三脚本的优势\x0d\\x0d\脚本之所以能够在游戏业中找到自己的一席之地,是因为网络游戏市场需要一个快速开发方案来避免C/C 开发带来的项目高成本和高风险。那么,脚本相对于C/C 这类编译型语言到底有什么优势呢\x0d\\x0d\I易于学习,代码可维护性强\x0d\\x0d\脚本的语法通常都非常简单,也没有太多高阶的特性,学习的门槛较C/C 低得多,比如Python可能只需要花一个下午即可学会。这使得游戏开发公司可以招聘完全没有脚本、编程经验的新手,通过低成本的培训,他们便能迅速地走上工作岗位。除易于学习外,脚本代码也有较强的可维护陛(尽管写出没有人看得懂的Lua代码也非难事)。因为脚本没有很多高阶特性(如c 里的模板元编程就是高阶特性),所以脚本程序员就有更多的精力去架构、模式、重用和测试等工作,从而提高了代码的可维护性。相应地,正因为没有那么多让人困惑的高阶特性,也使得脚本代码“简洁”不少。\x0d\\x0d\2.降低开发成本\x0d\\x0d\如上所言,由于脚本易于学习,游戏开发公司可以大量起用新手,这正是降低成本的有效手段。那么如何来确保新手所写代码的质量呢众所周知,新手无论用什么语言写程序肯定会出现bug,但用C/C 和Python做比较,可以看出,一个新手用C/c 编写出的程序所出现的bug肯定会比用Python编写出现的bug要多。由于c程序需要编译,而脚本程序(大部分)都可以直接解释执行,所以在排除 bug方面脚本也占有一定的优势,这也使脚本在降低成本的同时能够更好地保证代码质量。\x0d\\x0d\3.形成人才壁垒\x0d\\x0d\软件开发行业是一个颇为动荡的行业,无数的程序员都在跳槽和谋划跳槽的状态中生活,使用脚本开发形成人才壁垒是游戏业减少人才流动的有效手段。因为现在脚本除了在游戏业中非常流行外,并没有在其它行业形成广泛应用(虽然在web开发方面也有燎原之势,但终究不如在游戏业中的地位高)。这就使得游戏程序员很少会考虑非游戏行业的职位,但其它行业的程序员却可能会因为脚本的易学习性而转投游戏业。脚本除了能有效形成行业间的人才壁垒外,也能有效地形成企业间的人才壁垒。由于现有的脚本种类繁多,不同公司往往有不同的选择,甚至有些公司使用自己开发的脚本语言,所以程序员从公司A跳槽到公司B可能要学习使用另一种脚本,这就提高了跳槽的成本,从而减少了人才的流动。\x0d\\x0d\四脚本的发展趋势\x0d\\x0d\依照目前趋势来看,脚本语言一定会更加的普及,而且会逐渐渗透到其它行业中。随着网络游戏从业人员数量的增长,脚本程序员也一直增加,而且Web2、0热潮引起的网络需求,也促成了一批批新脚本程序员的诞生。网络游戏市场就像一个正在滚动的雪球,推动着脚本的普及。\x0d\\x0d\随着脚本在游戏业中越来越流行,市场对生产效率的需要也会相应提高。脚本虽然在一定程度上缓解了生产效率与生产工具之间的矛盾,但仍然不够完善。由于市场竞争日趋激烈,而网络游戏在很多功能上的实现又都相差无几,如网络、数据库、图形甚至部分逻辑,这必然会引起网络游戏生产的组装化一一大量中间件相互组合形成新的网络游戏。从目前来看,Bigwofld、PhysX和Unreal等都是比较流行的网络游戏中间件。脚本语言则是粘合各个中间件的良好胶水语言,所以随着网络游戏的生产组装化,脚本将有更大的发展空间。\x0d\\x0d\那么,当脚本发展到如日中天的时候,可能取代C/C 这些编译型语言吗笔者认为不会。脚本语言和编译型语言在生产效率和执行效率上各擅胜场,网络游戏既需要能快速应变的脚本,也需要能快速执行以提供更绚丽游戏效果的编译型语言。未来,它们之间一定会保持长久的和谐互补关系,相辅相成。\x0d\\x0d\五结语\x0d\\x0d\综上所述,网络游戏时代是上帝赐予脚本语言发展的绝好时机,脚本语言很快将迎来光芒四射的时代。脚本语言拥有编译型语言无可比拟的生产效率优势,所以它们将互补互助并肩奋战在游戏的最前线。
服务器端语言是在服务器上运行的程序所用的编程语言,比如你现在在里打字,这些操作包括更改输入法,打字都是在自己的电脑上运行的,但一旦你把他提交,就必须存到百度数据库中,之后所有人开这个网页都能看到你的提问,这个行为必须由服务器来操作,在服务器上运行,写这个服务器程序的语言就是服务器端语言,如PHP,JSP等。。。。
脚本语言是一种直接可由txt上写程序,不需要编译,纯文本的语言,只需要软件解释就可以直接运行的程序,这和C++等常规语言的不同点,你现在在网页空白处点击右键选择查看网页源代码,看到的文本就是脚本语言,可直接由浏览器解释并运行,脚本语言也就是可与某软件文字沟通的语言,这样的好处就是,形成了一个官方通用语,可以再网络上随便传来传去而且可以运行,比如刚才提到的网页源代码,就是百度服务器发过来的,但在你的浏览器上运行的客户端脚本,只要你装了浏览器,这个代码就能直接运行,你可以把看到的源代码复制到txt文件中,然后后缀改成,html,双击就能打开一个网页,不需要编译的,而非脚本语言就必须要编译,比如C语言,C++。。。。。
服务器语言和脚本语言没关系,是两个不同的属性描述,脚本语言可以使服务器语言,也可以不是,服务器语言也可以是脚本也可以不是。。。。
0条评论