快速业务通道

冒号和他的学生们(连载21)——后台脚本 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16

冒号和他的学生们(连载21)——后台脚本

时间:2011-07-01 BlogJava 郑晖

21.后台脚本

操千曲而后晓声,观千剑而后识器             ——《文心雕龙•知音》

“剩下四种动态语言,我们将之归为后台脚本语言。”冒号说着画了张图表——

用户
前台语言:Visual Basic,Delphi,JavaScript
平台语言:Java,C# 后台脚本语言:Perl,PHP,Python,Ruby
系统语言:C,C++,D
机器

引号听得仔细:“我记得您开始是把这些语言划分为C族静态语言、非C族静态语言和动态语言三类的。”

冒号解释:“那是按语法来划分的,偏重理论;现在是按应用来划分,偏重实践。”

句号旋即联想到:“这种分法貌似三层架构——前台语言对应表现层;平台语言和后台脚本语言对应业务逻辑层;系统语言对应数据层。”

“的确有些神似,但千万不可混淆。”冒号提醒道,“三层架构(three-tier architecture)是模块设计上的逻辑划分;而这里是按语言应用范围进行的物理划分——与用户交互的是前台语言,与机器交互的是系统语言,介于其中的为前台提供服务同时又需要底层系统服务的是后台语言。”

逗号询问:“后台语言又细分成平台语言与后台脚本语言?”

“这是基于程序(program)与脚本(script)、静态与动态而分的。”冒号进行说明,“其实Perl,PHP,Python和Ruby都有自己的虚拟机(Virtual Machine),从这种意义上说它们也可作为平台语言。但在实际应用中,它们没有Java平台和.NET平台那种凝聚力和核心作用,通常作为轻量级的解决方案。”

问号想探个究竟:“这是由于它们都是动态语言的缘故吗?”

冒号回答:“理论上动态语言同样能承担大型应用,但实践上它们多作为粘合语言或用于中小型应用。用句时髦的话来形容,暂时还是主流的配角或非主流的主角。毕竟在效率、类型安全、可用资源、开发工具、技术支持等方面,它们与Java、C#相比尚有一定差距。另外它们同属‘草根’语言,虽有开源社区的大力支持,在影响力上与后者未可同日而语。”

叹号揣测:“说不定在不久的将来,动态语言也会成为主流的主角。”

“世易时移,殊难逆料。但有一点可以肯定,语言的发展趋势一定是动静结合、刚柔并济。”冒号断言,“一方面以Java和C#为代表的静态语言中嫁接了动态语言的枝条;另一方面以Java和.NET为代表的平台与动态语言的交壤地带也在逐步扩大。比如JRuby允许Ruby与Java之间互相调用,类似的还有Jython、IronRuby、IronPython等等。此外值得一提的是,动态语言最活跃的舞台当数LAMP,L-A-M-P。”

引号接茬:“L是Linux,A是Apache,M是MySQL,P是PHP。”

冒号补充道:“P也可指Perl、Python,甚至Ruby。”

冒号和他的学生们(连载21)——后台脚本(2)

时间:2011-07-01 BlogJava 郑晖

句号调侃:“可惜Ruby的‘R’比‘P’多了一根尾巴。”

“有人为了自圆其说,干脆让P表示‘Programming language’,这下所有语言都囊括其中了。老外就喜欢玩这种首字母缩略(acronym)的文字游戏。”冒号语带调笑,“前面我们曾提及,网络应用是生长动态语言最肥沃的土壤,而LAMP就是这块土壤上搭建的平台。作为开源网络平台,LAMP以其开放灵活、开发迅

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号