你会尝试用Rails在下一个项目吗?

刚开始接触Ruby很抵触

成都创新互联成立于2013年,先为云县等服务建站,云县等地企业,进行企业商务咨询服务。为云县企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

在刚进入Rails的世界的时候,对于有4年JAVA开发经验的我来说,对Rails的抵触心理还是挺强的,原因有两个:

1.想精通一门语言,不想分散精力,而且认为Java是很***的

2.看了下Ruby的语法,感觉非常乱,不像Java那样规整,简单

我相信也有大部分Java程序员会和我有同样的感受。由于后面有一个项目由Rails实现是***选择。所以迫不得已开始学习Rails,看的书是《Agile Web Development with Rails 3rd_Edition》。

对Rails观点的转变

看了三章后,发现用Rails去实现一个Web应用是如此的简单,几十行代码就实现了Java几百行代码的功能。所以非常好奇的继续看下去,想知道为什么可以这么简单。通过学习慢慢发现了不少Rails的好处。

◆ 习惯约定优于配置

在Rails里没有很多的配置文件要去写,我想Java程序员***的痛苦之一就是XML配置文件了,不小心写错了也不好调试,不知道问题出在哪里。 之前Struts+Spring+Hibernate非常流行,要实现一个简单功能,你要配置几个XML文件?但在Rails里,使用约定就行了,当有特 殊情况时,再去修改配置。

◆ 代码简洁

发现同样实现一个功能,代码量是Java的1/3左右,甚至还要少。

对Rails越来越有好感,并且喜欢上它了。

如何进行敏捷开发

敏捷开发 ( Agile development )是一种以人为核心、迭代、循序渐进的开发方法。

后来我们团队用Rails做了三个成功的项目,一个在线CRM应用,体会到了敏捷开发的好处。

◆ 结对编程

我们是两个人结对编程,做任何事情都是Pair的,包括分析、写测试、写实现代码或者重构。Pair做事有很多好处,两个人在一起探讨很容易产生思想的火花,也不容易走上偏路,还会及时发现一些小Bug。

◆ 重构

相信大家对它都很熟悉了,有很多很多的书用来介绍重构,最着名的是Martin的《重构》,Joshua的《从重构到模式》等。重构是在不改变系统 外部行为下,对内部结构进行整理优化,使得代码尽量简单、优美、可扩展。我们经常会重构,好处就是项目代码一直是非常容易维护的。

◆ 小版本发布

在敏捷开发中,不会出现这种情况,拿到需求以后就闭门造车,直到***才将产品交付给客户,而是尽量多的产品发布,一般以周、月为单位。这样,客户每 隔一段时间就会拿到发布的产品进行试用,而我们可以从客户那得到更多的反馈来改进产品,不会发生客户说“这不是我想要的东西!" 的情况。

◆ 客户一起参与

客户是与开发团队一起工作的,团队到客户现场进行开发或者邀请客户到团队公司里来开发。如果开发过程中有什么问题或者产品经过一个迭代后,能够以最快速度得到客户的反馈。

敏捷开发过程与传统的开发过程有很大不同,在这过程中,团队是有激情有活力的,能够适应更大的变化,做出更高质量的软件。

性能

据robbin说:“JavaEye的PV到了140万,仍然是单台Web服务器,Rails处理动态请求超过340万,除了真实用户访问,还有API,RSS以及很多爬虫的请求。”

易趣,阿里巴巴刚开始也都用的PHP,国外的Twitter也用的是 Rails,我们在做了三个企业级项目和一个SaaS的CRM(WorkXP)之后,我们都没发现很多人所担心的性能问题,所以大家不用急着担心性能问题,如果真到了有性能问题的时候,说明你已经非常成功了,到那时再迁移到Java平台也来的及。

小团队的***选择

我非常同意JavaEye的robbin观点:“我认为目前小公司唯一的活路就是高效率的小规模团队,这样的团队才能充分发挥小公司灵活创新的特点,才有可能在某些方面战胜大公司,也才有可能在人才竞争方面胜出。”

WorkXP只有2个开发人员,用了3个月的时间就上线了!为什么可以这么快完成这么优秀的产品?这正是Rails敏捷开发带来的好处。如果用Java开发,我不知道半年是否可以上线? 所以如果你是小团队创业,可以考虑用Rails敏捷开发。

下一个项目,尝试用Rails吗?

现在我们再打算做一个项目或产品时,会多了一个选择,用J2EE还是Rails?这个要根据团队实际情况和项目需求来定,如果是小团队创业,试一下Rails的敏捷开发吧,一定会给您带来不少的惊喜!

原文:http://www.cnblogs.com/yuanpingi/archive/2011/07/11/rails_alternative_j2ee.html

当前文章:你会尝试用Rails在下一个项目吗?
网站路径:http://www.36103.cn/qtweb/news19/38969.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联