冒号和他的学生们(连载21)——后台脚本 - 编程入门网
ls框架。RoR奉行的CoC (Convention over Configuration)和DRY (Don''t repeat yourself )原则以及MVC架构看似了无新意,但与Ruby结合之后,便如一只猱身而上灵猫,立刻衬托出Java和.NET大象般的身影。”
冒号和他的学生们(连载21)——后台脚本(3)时间:2011-07-01 BlogJava 郑晖逗号有些怀疑:“框架竟然捧红了语言,框架真有这么重要吗?” “如果Web应用中动态页面较少或业务逻辑不复杂,框架的价值并不大。以前CGI编程就是往Perl之类的代码中嵌入HTML代码,如同Java中的Servlet;PHP则单纯地在HTML代码中插入PHP代码,如同早期的JSP。没有MVC,也不管什么三层架构,更没有ORM。但是——”冒号拖了个转折音,“一旦业务逻辑变得复杂,开发人员增多,手工作坊式编程开始捉襟见肘,引入框架这个流水生产线来提高生产力便是大势所趋。” 句号不解:“我想Perl、Python和PHP一定也有不少框架,Java中的框架更是泛滥成灾,何以独独RoR脱颖而出?” 冒号作出分析:“各种web应用框架是不少,但在RoR之前轻量级套餐式解决方案并不多。Perl中的Catalyst、Python中的Pylon还有PHP中的CakePHP等都是效仿之作。此外,Perl和PHP由于过于流行,反而有不少的历史包袱,人们习惯了将表示逻辑和业务逻辑编织在一起。至于Java企业解决方案,框架太多,搭配组合更多,增加了选择的难度。即使采用最常见的Struts+Spring+Hibernate组合,维护起来也比RoR繁杂得多。” 叹号愈发担忧:“听这意思,Java还是危险啊!” “言之过早。”冒号不以为然,“首先RoR还有待进一步检验,目前无论是应用广度还是深度上尚无法与Java相提并论;其次Java在性能、安全等方面还是有不少优势,而这些对于大型和关键性的应用来说尤为重要。即使在中小型web应用中,RoR较之PHP还远为不及。” 问号接下话题:“PHP为何如此流行?” “因为它简单、专一。”冒号答得很干脆,“与Python和Ruby一开始就定位通用语言不同,PHP是专为网络而生的。同早期的Perl相似,PHP起初主要起文本过滤器的作用,只不过Perl多处理文件流(file stream),而PHP多处理套接字流(socket stream)。PHP的语法简单,且为网络应用度身定造,受到网络开发人员的追捧当在情理之中。但它实用而不完美,比如:变量名大小写敏感而函数名大小写不敏感;函数命名规则不一致;不支持namespace和unicode;与Perl一样,它的对象模型不是先天的,直到PHP 5才真正完善;对线程支持不足;相比Perl、Python和Ruby,它的功能稍显单薄等等。” 引号突然想起:“我记得您在第一堂课提到PHP还能用于桌面应用。” “不仅PHP,Perl、Python还有Ruby,都能作为前台语言来开发命令行或图形界面的应用。同样地,VB、Delphi和JavaScript也能作为后台语言。现代语言都趋向通用化和全能化,以争取更多的生存空间。”言及于此,冒号收住话题,“语言简评该告一段落了,现在请大家每人写一句对本节课的感言。” 众人沉思片刻,挥笔而就—— 叹号——没有最好的语言,只有最合适的语言。 逗号——没有糟糕的语言,只有糟糕的程序员。 问号——没有一种语言是万能的,只会一种语言是万万不能的。 引号——废除对语言的宗教信仰,建立对语言的哲学思维。 句号——编程就是在人脑和电脑之间寻找最佳平衡点的过程。 冒号读罢大悦,顺手一掌拍出五记马屁:“精彩之极!可谓字字珠玑、句句联璧啊。兹决定,给诸位的奖赏是——下课!” 众人欣然领赏而去。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |