近期研究ROR的一点总结

原创 2011年04月22日 19:41:00




    ruby的rails,python的django,groovy的grails,java的play。。。


    如今的DRY原则真是遍地开花,近两年让人目不暇接。


    我花了点时间,对他们进行了使用和对比。总结如下:


    一、rails可以说是鼻祖,这方面的口碑不错,技术文档和书籍都足够使用。但是,从多个对比数据看,性能上始终处于落后位置。(无论这些数据是否真实,但太多的对比结构却都一致),并且,作为“鼻祖”,被青出于蓝胜于蓝的感觉太强烈


    二、django,结构设计非常精彩,在其它三个框架内不太容易实现的操作方式,对django来说,都是轻而易举。并且,python语言的天生优点,导致后期开发相当灵活,看上去,非常迷人。可惜,python语言总体被支持程度,尤其是对第三方开源库的管理上,欠缺很大,导致稍微复杂一点的应用,没有现成的第三方库支持,手工劳动必然增多,研发与维护成本将是考验


    三、grails,站在groovy势不可挡的宣传力度上,再加上终于找到靠山(grails的作者与groovy作者合作后被spring收购,又被vm收购。。。),尤其它的插件,极其丰富(就是质量管理太差)。所以,他们喊出了search is over的豪言壮语。我在使用的时候,心情一开始非常机动,(但都激动在了groovy本身上)。马上,对hibernate与spring的严重依赖,导致灵活性下降的弊病暴露出来。甚至你想实现一个简单的多数据源切换与灵活配置,都变得非常困难。(虽然有datasources插件,但仔细看看它的代码,相信就不敢产品级使用了)


    四、play,它是悄悄出现,却最受重视,从官方网站上的评论中就能看到,国人的出镜率很高。虽然站在代码角度,它离真正成熟还有一段路要走。不过,从已经公布的路线图上看,它有很强的针对grails的感觉,但凡grails操作略显麻烦的事情,play都以框架级解决。并且,它的插件也很丰富。尤其是管理者对文档的编写上,的确花了不少心思,也占了java语言的便宜。简单、明了,一看就懂,实在是优点。


    综上,虽然我个人对web领域的MVC情节很重,而这些DRY思想的框架也带有强烈的征服感。而我给出的结论,路依旧很长,他们的成熟度整体不高。尤其是性能风险,如果没有多年经验的年轻程序员,将无法避免的陷在“美丽的恐怖”当中。


    这也是至今他们都仍然没有被大规模平台考验的原因。


    如果让我给意见,我建议所有的web开发者们,都必须研究他们,他们是方向,当你拿着高薪用perl开发web的时候,底薪的php程序员们已经注定去淘汰你。今天的DRY们就是这个目的。随着研究的深入,也随着他们日益成熟,现有web开发模式升级的时代应该在近3年内出现。(如果不考虑调岗,就要考虑升级)


    如果让我建议用哪个,我建议企业产品应该以grails为主,因为grails发展动力,至今是最强的,并且在spring的全力支持下,首先提供了云计算插件。如果针对普通web门户,我建议使用django,虽然存在很多手工劳动,但它在稳定、性能、成本间是最高的。如果针对政府项目,我建议用rails,拿来现成东西改改就行,并且这个领域里使用它的人不多,一旦客户想更换技术服务,技术本身就成为你的保护。如果是“富客户端”环境,我建议用play,它的学习成本几乎为零,插件管理也比grails出色。当然,这些建议只是一种“闲聊”,请务必当真。习惯和阅历,往往已经决定了你所有的选择。


    除了这些,建议大家强烈关注scala,这个语言虽然年轻,但不久的将来,一定会有一批基于它的框架出现。同时也建议大家都应该继续关注php,无论你站在企业应用角度挑出它多少毛病,它的简单易用(有些问题不可解决,也就不用理睬,能不显得简单吗)背后,已经呈现出一些不甘被超越的路线图,相信php未来2年内会推出让fans们期盼10年才更来的功能。


    总结完毕?还差一点,就是对java的想说的几句话,明明可以拥有比动态语言更丰富的语言级支持,但就是迟迟没有动作,真不知道oracle怎么想的,难道“让它死”的传言属实?不过,积攒了全球数百万的技术社区和堆积如山的开源库,将决定了它不可能消亡。我们能做的,就是天天期盼,慢慢等待,等待java在web上的新生(严格的讲,java就没在web上有多大作为)。

ubuntu14.04下ROR安装及配置

又折腾了一天,总算大概能用,记录如下1.ubuntu14.04下ruby on rails的安装ruby-china社区的指南很不错,保存如下$ curl -L https://get.rvm.io ...
  • gux928
  • gux928
  • 2015年06月28日 19:26
  • 430

ROL,ROR,SAR,SHR,SAL,SHL区别

SHL,SAL分别是逻辑左移和算术左移,运行结果是一样的,都是数据往左移动,然后在右边补零;SHR是逻辑右移,数据往右移动,在左边补零。如:1000 0000->0010 0000(逻辑右移两位)SA...
  • qwer_boo
  • qwer_boo
  • 2010年05月29日 21:05
  • 4226

RoR中如何做测试

A Guide to Testing Rails Applications 导记因为从测试转身而来,所以学习一门新语言或新框架,我也要先从如何开展测试开始,TDD嘛test默认rails自带test文...
  • qhshiniba
  • qhshiniba
  • 2016年08月10日 20:14
  • 982

研究方法的一点总结

1, 如何找研究方向/研究点   我们从参加工作开始,就限定了一个大概的领域:互联网,移动通信,机械工程等等。所以所谓的研究方向也就是在一个限定的范围内,寻找新的问题,或者对于某个问题寻找新的更好...
  • axler
  • axler
  • 2011年05月31日 17:02
  • 2715

关于汇编ROR的运算

设(AX)=5,(BX)=3 ,(CX)=2,执行下列程序段后,(AX)= LOP: ROR BX,CL ADC AX,BX LOOP LOP 请问ROR是怎么移位的?谢谢 ...
  • chunhui2578
  • chunhui2578
  • 2011年09月17日 14:58
  • 986

Ror初学笔记

 Ror正在以惊人的速度增长着,特别是在经常光顾JavaEye的时候发现Ror已经在国内有很好的基础了,当然要凑个热闹尝尝鲜 咯。     目前国内Ror的中文资料还是很少的,到网上找找就只有Eiff...
  • yueguangyuan
  • yueguangyuan
  • 2006年10月16日 01:29
  • 6332

shapelib资源

shapelib资源   这里列出了shapelib资源,以供需要时候查用。   参考 1.shapelib库 介绍 http://shapelib.maptools.org/manifes...
  • wsh6759
  • wsh6759
  • 2012年05月06日 12:45
  • 656

近期的一点感悟

不知道从什么开始恐惧长大,感觉自己好像还没有准备好变成一个大人,后来才发现是小时候的教育,父母只是告诉我好好学习,小学升初中初中到高中高中又要到学校,在这期间跟社会的接触很少,仿佛一夕之间自己要去面对...
  • u013032564
  • u013032564
  • 2015年07月24日 20:38
  • 72

近期的一点感慨

1. 致我们终将逝去的青春 ——还是很值得一看的  2. 中国合伙人——孟晓俊说的对,我们这代人最需要的是改变 3. 领导的文本真厉害,什么样的底稿经其一改,都变得官样十足,不服不行 4. 当我们还在...
  • forthcriminson
  • forthcriminson
  • 2013年08月18日 23:00
  • 540

对这一年做一个简单总结

马上就要过春节了,回顾2016感觉有很多想要写下来的事情,可当现在真正有时间想要写点东西的时候,却突然感觉什么也写不出来了,但还是要把2016年经历的一些重要的事情写下来,这也算是一种对生活的记录吧。...
  • z_xiongmao
  • z_xiongmao
  • 2017年01月22日 14:50
  • 175
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:近期研究ROR的一点总结
举报原因:
原因补充:

(最多只允许输入30个字)