论坛首页 编程语言技术论坛

我怎么就觉得rails适合做大型应用

浏览 104763 次
该帖已经被评为良好帖
作者 正文
   发表时间:2008-08-26  
火星叔叔马丁 写道
ltian 写道

这确实是个无奈,我曾经回楼主的另一个帖子说过竞争迫使决策者冒险,现在你做企业应用不用B/S,几乎会被鄙视死。
如果能回到以前,我仍然喜欢用Delphi开发企业应用。

    我们两个之间的争论不是在于RAIL能否则做企业开发,而是我不大赞同做大型企业开发时Rails能够以很大差别减少代码数量。你认为依靠Rails本身语言的简洁,我认为更大地依赖框架的运用。后来争吵也就是因为这样,很多Rails支持者们没有看清我说的,认为我否定Rails开发企业开发的可能性。所以口水战就开始了。我是一直做企业开发过过来的,应该算个老程序员了。对我来说,C/S系统升级到B/S系统中头一个难题摆在我面前的就是UI,也就是View的问题。我对乐观估计形式的兄弟们提出UI的三个需求,所有非议因此而来。

   不过现在我发现用RIA+Java可以有效解决UI的问题。我们的系统已经在试运行,用户反响不错。希望有机会和大家分享这方面的经验。即便想用Rail做服务器端,我认为企业开发的前端选型还是要慎重。既然大家觉得Rails那么简洁,我也会抽出时间学的。


说真的 我不相信...


说真的,我也不信。
7 请登录后投票
   发表时间:2008-08-26  
强啊!无敌啊!

ltian兄,我很喜欢你。就为你对V的重视,我觉得你很有魅力。
8 请登录后投票
   发表时间:2008-08-26  
rails不仅仅是前台吧.
唉,哪跟哪啊.

忍不住,还是插了一腿.
0 请登录后投票
   发表时间:2008-08-26  
ltian,大家在说框架,你在说v
0 请登录后投票
   发表时间:2008-08-26  
ltian 写道
我们两个之间的争论不是在于RAIL能否则做企业开发,而是我不大赞同做大型企业开发时Rails能够以很大差别减少代码数量。你认为依靠Rails本身语言的简洁,我认为更大地依赖框架的运用。后来争吵也就是因为这样,很多Rails支持者们没有看清我说的,认为我否定Rails开发企业开发的可能性。所以口水战就开始了。我是一直做企业开发过过来的,应该算个老程序员了。对我来说,C/S系统升级到B/S系统中头一个难题摆在我面前的就是UI,也就是View的问题。我对乐观估计形式的兄弟们提出UI的三个需求,所有非议因此而来。

不过现在我发现用RIA+Java可以有效解决UI的问题。我们的系统已经在试运行,用户反响不错。希望有机会和大家分享这方面的经验。即便想用Rail做服务器端,我认为企业开发的前端选型还是要慎重。既然大家觉得Rails那么简洁,我也会抽出时间学的。

 

 

1 你对rails又不熟悉,你干嘛非要过来插一脚,我真不明白。

2 rails就不能RIA了?你可以去了解下webORB和rubyAMF是干嘛用的,如果你认为只有java可以RIA,那么我就认为你的水平远远在刚入行者之下。

3 感觉你有点自大,吃了顿 flex这个鸽子蛋就认为天下无敌了,总是认为自己是正确的。

4 LS两位兄弟没错啊,人家说框架,ltian非说V,有人(没指ltian)干嘛非要给别人投个差票?另外发现前面也有几个无辜的帖子,不爽可以站出来说话嘛,这样不明不白瞎投算什么!

5 我不认为你对UI的理解有多深,一个合格的UI设计师起码能分的清javascript和java

0 请登录后投票
   发表时间:2008-08-26  
gigix 写道
引用
用Ruby能比用Java减少30%代码量这样结果不知道谁统计的?同样的功能?指哪些方面的功能呢?不要专门指Ruby擅长的或者Ruby自身封装的 API库里那部分功能?不知道Ruby做一个组态图形库的代码量如何?用Ruby写数学算法的代码会比java减少出30%吗? 谢谢。

sigh
其实这个事情我都说过好多遍,说得都疲了…好吧再说一遍
companies.collect(&:departments).flatten.select{|dep|dep.location=="Shanghai"}.collect(&:employees).flatten.uniq.size

拿Java写一个来看看?
有些东西啊,既然别人这么言之凿凿的说,那肯定是有一定道理的,别人肯定是想过的
您这上来就“我们如何如何”,行,您什么都知道了,我也没啥必要非得说服谁不可,我又不损失什么



现在的java还没有引入闭包,所以不能完全一样,但也不复杂:
假定,我有这么一个Util class: Setting
它有如下方法:collect, select, flatten, uniq, size
那么以如下方式构造companies后: Setting companies = new Setting(company1, company2 ...)
访你的ruby写法会是什么样子呢:
Closure closure = new Closure<Department>() {
    public Object exec(Department dep) {
       return dep.location = "shanghai";
    }
};
companies.collect(".departments").select(closure).collection(".employees").uniq().size()


差了很多没?除了闭包得用inner class的方式实现,带来了一些复杂度外,其它的都差不了多少。

rails使得ruby很火,让很多人以为ruby也会很火,正如当初java去抢c++的市场份额一样。事实上,除去rails,单说93年就出现的ruby,要是他真那么好,会到现在才火?我学ruby是02年或03年的时候,那时看过一篇讲aop的文章,从java讲到aspectJ,然后又讲到ruby,然后就试着学了一段时间的ruby,结果是:我不感冒。

至于rails的理念,我04年就在相关项目中用到了,那时rails还没出现。rails这种理念在面对简单业务(CRUD+Search),会带来超爽快感,大大加快开发速度,但面对复杂业务时,又会回到原点,当然不是说会拖后腿。是很好的东西,但不是万能药,更不是ruby所独有的。

大型企业应用,有几个含义吧,
一是说要安全、性能好、并发(通常这点要求很少,反倒是各种门户网站在这方面要求高)
二是说大量业务:业务对象超多,几百到几千个。涉及业务对象多,为了某一个业务,要多达上十个业务对象的协作。
三是说开发的人员多,周期长(这个词可能不是很确切):一个系统一个版本一个版本的升级,长达多年的生命周期,不同周期的软件架构升级与兼容。另外就是,开发人员都几乎能换几批。
四是说会有多个异构系统之间的信息交流。楼主也说了rails上对REST的支持,但相比SOA,它就好比碗中的一滴水(没用大海)。

那么。。。rails能做?或者不局限于某一框架,ruby能做?
我无法说将来,至少现在用ruby做的话,工作量太大,他缺少了企业级应用所需要的太多太多东西。

总而言之,ruby能做的java基本能做,rails能达到的开发速度,java也能达到。rails没有明显优势。忽然我想,纯淬的抛java选ruby,其实只不过是抛弃现有的轮子再造一个带花的轮子而已————事实上,我更偏向于给现有的轮子加上花纹。
3 请登录后投票
   发表时间:2008-08-26  

说的比较上路,那么有以下几点可以讨论下

starfeng 写道

四是说会有多个异构系统之间的信息交流。楼主也说了rails上对REST的支持,但相比SOA,它就好比碗中的一滴水(没用大海)。

 我的疑问是,可以对这个SOA进一步解释下吗?为什么rest好比碗中的一滴水呢?

 

 



那么。。。rails能做?或者不局限于某一框架,ruby能做?
我无法说将来,至少现在用ruby做的话,工作量太大,他缺少了企业级应用所需要的太多太多东西。

这个太多太多的东西包括?

 

写道
总而言之,ruby能做的java基本能做,rails能达到的开发速度,java也能达到。rails没有明显优势。忽然我想,纯淬的抛java选ruby,其实只不过是抛弃现有的轮子再造一个带花的轮子而已————事实上,我更偏向于给现有的轮子加上花纹。

 

那用.net开发企业级应用算不算重复造轮子呢?另外我的观点是用rails做大型应用适合,并不是java做就不适合,只是觉得重复造轮子一说值得商榷,莫非sun那么傻,费那么大劲发展 JRuby。

 

就我而言,开发速度是rails明显比java快(个人观点)

 

其实很多东西不好说,可以透漏一下,欧美很多外包企业级项目(不敢说是大型),选型rails,我要是没有一定这方面的信息,我也不会这么说,总体情况是方兴未艾吧。

 

PS:当年学python时,问python社区的人python的发展情况,给我的的答案是:python给人的感觉很低调,原因是很多人用的很爽,不愿意告诉别人,比如google yahoo

 

 

 

 

 

0 请登录后投票
   发表时间:2008-08-26  
欧美大型企业应用,没见过Ruby的,倒见过PHP的....
不过PHP都能做,Rails应该也可以吧.
0 请登录后投票
   发表时间:2008-08-26  
ltian 写道
hyf 写道
强啊!无敌啊!

ltian兄,我很喜欢你。就为你对V的重视,我觉得你很有魅力。


我在这里被批判的较多,我都没有能力鉴别你说的话是正面还是反面。V对于企业应用来说很重要,V不方便用的时候,用户是不会喜欢这个系统的,任凭你服务器端做得多么好,用户不认可。当然没遇到这种情况的人是不了解的。被用户骂烂系统的滋味并不好受,甚至会感到很委屈。因为在系统的构架,代码的质量上花了很大的功夫,得到的是不认可。多年血教训告诉我,V很重要。


这个我是觉得的赞成的..

对于,java和ruby而言,

java: 拿我同事的话说,java程序员至少在百年内不会灭绝的..

ruby: 如果以动态语言来说,百年外是不会灭绝的..

0 请登录后投票
   发表时间:2008-08-26  
引用
我没说rail不能支持RIA.你自己理解问题。webORB和rubyAMF这两个东西的存在我知道,但不感兴趣.成功的案例有多少我不知道,但是java与RIA组合成功范例太多了。


这个,太可爱了
既然你做RIA嘛,前端后端本来就是两大块,中间XML或者JSON
那就算一个成功案例都没有吧,可是你在担心什么呢?
担心Rails生成不了XML?貌似这个风险小得很啊。
还是担心你做的RIA前端他只能解析Java生成的XML,解析不了Rails生成的XML?

我说,有风险意识是好事啊,没事瞎操心那跟风险意识还是有点区别的吧?
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics