中国开发网: 论坛: 程序员情感CBD: 贴子 131919
haitao
【转自csdn】RoR历险记:一个Java程序员的Ruby on Rails体验
RoR历险记:一个Java程序员的Ruby on Rails体验
(2005.04.26)




(本文转载自magicgod's blog,原文地址:http://www.matrix.org.cn/blog/magicgod/archives/week_2005_04_17.html#001113)
ROR历险记
ROR is Ruby on Rails. Ruby 众所周知已经是一种非常出色的动态语言 It's dynamic language。Simple and easy.动态语言是解释执行的,但性能上可能会打个折扣,但不是绝对的,因为应用是复杂的,性能是一种综合性的,这个在一个流传的测试中有回应。

按照Rails4Days.pdf

1.安装和配置出奇的简单。

(真的很想提醒一下所有的java社区,充斥着各种框架的各个社区难道就没想到install吗?Everyone forgot to make install? 无论是J2EE,Spring,Hibernate,Struts等等,全部都没有 install。所有apache's jakarta的项目,竟然都没有install的,struts只有一个war,象一个demo,这种艰苦的环境会让linux fans笑倒的,ant和make都一样,怎么样也不能叫install。)

安装完ruby182-14.exe,就用gem来安装rails。

gem是ruby的install。gem install rails 就可以了。在回答问题的时候选y。

2.要生成一个web应用更简单。
ruby rails <目录名>
一套web应用就生成了,配置一下数据库。config/database.yml,看一下就知道配置。
mysql要准备好,再创建数据表。

3.代码生成
ruby script/generate <类型> <名称>
MVC都能生在,框架也可以,还有WebServices
http://rubyonrails.org/show/Generators
还有生成器可以下载,实在得令人心寒。

当Hibernate3,EJB3还在那儿绕来绕去的时候,Spring,Hivemind还在那儿遮遮掩掩的时候,MDA和UML还在云山雾照的时候,ROR已经实干了。
可以代码生成,CRUD只要一句话,可以说演示非常方便,生成的代码量非常小,改起来很方便,使用一段时间就觉得很贴近业务思路,或者说人类语法。展示层还是象大多数嵌入式脚本,类JSP。但是由于是动态语言,非常精简,实际上看上去比标签精简多了。

缺点:
大型应用是否支持?
有多少人支持?
性能?

总的来说,人们对ROR的担心在于:能长久吗?程序是否稳定?各项性能?

有一个性能测试,据说ROR>Hibernate+Spring+Struts , 居然还多15-20%。敢这样说总有点来头的,况且开发速度要>10倍以上。不过网址忘了,google上查一下就知道了。

被各种框架折磨了很长时间,突然发现这么一个清新的东西,一直不习惯,怎么能这样呢,DAO总是要定义一个Base的,同一种find函数要写十个,现在怎么能这么简单呢,简单地都变成随意了。find_all就行了?find(@params[:id])就直接从参数里查询出对象?从 Tapestry还要OO,比Hibernate还要ORM,这简直是一种魔鬼。还能和C接口,关键业务放到C里去。比MVC还要MVC,目前为止明显的问题还是美工无法分离的问题,因为<%for%>这样的代码美工不可能来处理的。

对象与数据库的连接更自然了,这让我想起了Delphi,由于只有Borland在控制,Object Pascal得以很优美,VCL很完整,ruby也是这样?

看上去ruby吸收了非常多的java社区的思想,这也是一种有活力的表现,如果这种劲头保持下去,会象php一样来传染互联网。虽然php现在已经有老了的感觉,但由于一开始的清新空气使它一直生存到现在。

ROR非常适合做应用,快速应用,这并不意味着不适合大型应用,目前因为还没看到大型应用,不敢乱说,心里也没底。底层应用不知道是否适合,因为一般来说底层应用往往是中级语言的世界,象C之类,Ruby应该也可以port进来,不过直接做底层可能性不大吧。

想起了以前对Perl的形容,胶水,很贴切,本身好象做不了啥事,但可以迅速地粘起来一个东西来,如果胶水强度足够,甚至粘出一个大厦。Ruby也象是这样的胶水,现在在web方面比perl更强了。

(刚打出了“恶业胃”三个字,猜一猜是什么意思?)

最后说一句,fastcgi怎么也装不上,fastcgi for apache已经装好了,好象是fastcgi for ruby装不上。

参见:

ruby for apache:It's one-click install on windows and apache2 http://rubyforge.org/projects/rubyforapache

fastcgi with ruby: http://wiki.rubyonrails.com/rails/show/FastCGI

document for rails: http://documentation.rubyonrails.com/








网友评论
eddygtimegod: CSDN的人真是会吹,呵呵~~文章只是介绍,评论却。。。。
真是不是一个档次 (2005.04.27)

ChumpKlutz: 晕,能用中文表示就用中文表示,像作者这种人太洋了吧.
我最讨厌这种人学台湾的小妹妹,真恶心. (2005.04.27)

archmaster: Just a toy language now. A long time to dev enterprise app (2005.04.27)

xxzx2004xy: Corer的话很中肯,的确是,基础好了自然什么都可以了,新东西可以在闲暇时大概了解一下,呵呵
(2005.04.26)

Corer: 我觉得这东西在无聊时学学 消磨时间 毕竟现在也没有大规模应用,一个工具的成功不止在于它的优点,还有厂商的大力支持。而且转向新的开发工具代价很大,大家都说什么c语言的缺点的多 然而用的人最多。只要掌握好主流的c/c++,java就可 当你有深度时 用什么工具都差别不大 关键在于思想。我是深有感触的,python的在国外是很火的 在国内根本没人招 呵呵 一切发展要根据国情,程序员也是一样的 (2005.04.26)
我的blog:http://szhaitao.blog.hexun.com & http://www.hoolee.com/user/haitao
--以上均为泛泛之谈--
不尽牛人滚滚来,无边硬伤纷纷现 人在江湖(出来的),哪能不挨刀(总归是要的)
网络对话,歧义纷生;你以为明白了对方的话,其实呢?

您所在的IP暂时不能使用低版本的QQ,请到:http://im.qq.com/下载安装最新版的QQ,感谢您对QQ的支持和使用

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录