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

ruby on rails为什么暂时无法成为企业应用开发的主流?

浏览 84954 次
该帖已经被评为精华帖
作者 正文
   发表时间:2006-09-18  
更加 make sense 的代码应该是这样的:

class Person
end

class Manager
end

degrade_to_module Manager # imaginary

class Man < Person
end

m = Man.new
m.extend(Manager)
0 请登录后投票
   发表时间:2006-09-18  
大家为什么不讨论一下ruby的语法呢,我觉得这个才是主要的问题.太复杂,协作困难
0 请登录后投票
   发表时间:2006-09-18  
Ruby 的语法太复杂? 我还没见过比 Ruby 的语法更自然,更简洁的。
0 请登录后投票
   发表时间:2006-09-18  
uncutstone 写道
Ruby 的语法太复杂? 我还没见过比 Ruby 的语法更自然,更简洁的。


SmallTalk...
0 请登录后投票
   发表时间:2006-09-18  
引用

Ruby 的语法太复杂? 我还没见过比 Ruby 的语法更自然,更简洁的。

正如robbin如说的,ruby就是由于有一些奇淫技巧,导致程序员之间编写的代码风格等可能差异很大.

你所说的简洁是因为与JAVA相比的代码量可以减到很少,而我注重的是程序员之间的交互成本
0 请登录后投票
   发表时间:2006-09-22  
+1 交流成本。
0 请登录后投票
   发表时间:2006-12-12  
引用
例如JavaEye2.0中,整个forum就只有一个controller,整个blog也就只有一个controller。当然你惊叹,整个forum代码就一个文件搞定了啊,代码太少了!但是反过来,你也可以说,论坛这个功能只能交给一个人来做了,没有办法再拆分功能了。这就带来了一个问题,团队协作变的困难了,如果两个人同时做论坛模块,就会出现经常性的该controller文件冲突合并。即使妥协一下,每个人只负责一个大功能块,但是底层的model代码都是互相关联在一起的。又难以避免的并发修改和文件冲突合并。

  我听说,ROR就是设计为敏捷开发服务的,也可以说用ROR就必须用敏捷开发。

  敏捷开发我只了解一些XP,XP中有一些原则,比如测试驱动开发、结对编程、迭代开发等等。

  从文中介绍的情况来看,至少你们没有使用结对编程。

  假设有4个程序员ABCD,结对的情况是怎么样呢?

  可能是第一天上午AB结对开发函数X、CD结对开发函数Y,下午AC结对开发函数Z、BD结对开发函数X;第二天上午AD结对开发函数Y、BC结对开发函数Z,下午又是CD结对开发函数Z、AB结对开发函数Y。

  这就是说,结对的两个人不是固定的,所开发的模块也是变化的,所以,一个 Controller 即不是一个人开发的,也不是结对的两个人开发的,而是所有开发人员共同开发的。事实上,连一个函数也非常可能是由多个人完成的。这样,在项目结束时,所有人对项目的所有部分都有接触,所有的开发人员都可以进行项目维护,离开一个人,或者加入一个新人,对于开发团队不会造成大的不利影响。

  而在结对编程中,那些“奇技淫巧”可以通过结对的两个人的讨论,得以传播、或者放弃。结果是统一思想、统一编程风格等等,也就使得开发出来的软件的可维护性增强。

  事实上,就我的理解,使用XP开发,就算只有2个人进行开发,也应该结对编程。

  不知道这算不算解答了文中的问题?
0 请登录后投票
   发表时间:2006-12-13  
偶是刚刚学习ruby,才不到一个月,偶的感觉ror是一辆赛车,也许还是辆ferrari,但是不适合在大马路上跑.相反中规中矩的QQ(java),倒是蛮适合马路上乱蹦的.
ruby要是想挺进企业应用,我想没有4-5年的光景,连门槛都进不了,除非有更多的rails出现
哈,偶有点坐井观天了哈
0 请登录后投票
   发表时间:2006-12-15  
虽然自己很喜欢ROR 但是却对其应用前景不乐观
先天上,前面大家说了很多了;后天上,很多既得利益方对其发展制造些障碍,但是话说回来,“无人妒忌是庸才” 呵呵~
0 请登录后投票
   发表时间:2006-12-16  
感觉这就是java在垂死挣扎
没有任何用java的人会去批评perl的解决问题不止一种方法的理念,因为二者不在一个利益范畴之内
python也并非转为web而存在
反倒是ruby摸到了java的痛处
java应当退到他的最佳实践中去,而不是在ruby占有明显优势的地方负隅顽抗,就像当年C++做的那样
0 请登录后投票
论坛首页 编程语言技术版

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