已锁定 主题:我喜欢Ruby的原因
精华帖 (0) :: 良好帖 (12) :: 新手帖 (0) :: 隐藏帖 (2)
|
|
---|---|
作者 | 正文 |
发表时间:2008-04-24
业余有啥不好的,C,Unix就是业余搞出来的,基本上就是为了个Space Travel游戏跑得快一点
|
|
返回顶楼 | |
发表时间:2008-04-24
说说我的看法:语言简洁度、灵活性、方法包的丰富性这些ror无疑要强于java,这点毋庸置疑,不然java就不会考虑搞个jruby或groovy来模仿了,正是因为先进才要将这些特性引入java当中,如果落后那何必要多此一举呢?搞java的人又不是傻x;代码行数少未必就能写出易维护的代码,那要看谁设计谁写的,你的项目组有几个蹩脚的初级程序员整天给你添乱我看你还敢不敢把代码少成天挂在嘴上;ruby和ror现在一个问题是业界和用户接受程度上还没有广泛经受住考验,毕竟是新生不久的事物,从乙方角度来说,你找java程序员肯定比找ror程序员容易得多,你是java程序员现在你捧个饭碗吃几口饭也容易得多;从甲方角度讲,接受一个java做的erp或crm比接受一个ror做的要多得多,要不你去拿ror架构现在去竞争一个电信项目看看?ror现在是小男孩裸奔,两三年后我们再回过头来看看他是好汉还是孬种吧。不过,比较两种语言的优劣还是很值得的,理越讲越明嘛,吵架生哪门子气太没必要了,生气了难道java代码就能够少几行?哈哈。
|
|
返回顶楼 | |
发表时间:2008-04-24
看来胡搅蛮缠很有意思啊,huh?
“代码行数少未必就能写出易维护的代码,那要看谁设计谁写的..." -- 胡搅蛮缠! “ruby和ror现在一个问题是业界和用户接受程度上还没有广泛经受住考验...” -- 这有关系么? 那个甲方乙方的问题,你就不用当心了,客户不同意,是不会有人硬把ruby/rails塞给客户的。关键是,你有尝试让客户了解ruby/rails么? “ror现在是小男孩裸奔,两三年后我们再回过头来看看他是好汉还是孬种吧” --胡搅蛮缠! “比较两种语言的优劣还是很值得的...” -- 我们不是在比较语言的优劣吧?我们始终在讨论的是ruby这种语言的一些特性会对表达带来什么影响,以及rails这种框架对软件开发方法有什么特别的地方(例如一些人提出当心xxx问题在rails下其实不会yyyy...)。 “吵架生哪门子气太没必要了,生气了难道java代码就能够少几行” -- 不生气,我不写java代码。 |
|
返回顶楼 | |
发表时间:2008-04-24
引用 我重申一点,我以为ruby之类是个人应用的一个也许还可以的工具,但绝对不是集体项目开发的选择。
(耸肩) 北美的一大堆客户都要求用Rails来做他们的项目 咱们就看看中国会用多长时间来跟上北美的风潮吧 从前人们说Java不行的时候,说.NET不行的时候,不都是一样的历史不断重演么 rubynroll 写道 那个甲方乙方的问题,你就不用当心了,客户不同意,是不会有人硬把ruby/rails塞给客户的。关键是,你有尝试让客户了解ruby/rails么?
历史一再证明,客户会强迫厌恶变化的程序员们不得不面对变化或者转行并且抱怨程序员是一碗青春饭没法吃到三十五岁 IT行业的好处是它让历史在很短的时间里重演,不过即便只是短到10年的历史也有很多人记不住 |
|
返回顶楼 | |
发表时间:2008-04-24
mcpssx 写道 谢谢,还好我用ruby的时候rails这个框架恐怕还没出来,我可以告诉你,包括D语言,ocaml,erlang,scheme我都玩过,而且绝对是国内根本就没有流行的时候,还有各种稀奇古怪的比如kdb+,K语言。
拜托你看清楚一点: robbin 写道 否定ruby的人以mcpssx,自言自语为首都是那种根本没有ruby实际开发经验
我还可以告诉你,我玩过的语言不下30种,很多语言你听都没有听过,但是这不代表我掌握了这种语言,更加不意味着有这种语言的实际开发经验。 引用 2、你说的前面那个人的观点已经被我反驳掉了,他本人也承认自己观点错了,你还拿这个作为例证,不觉得挺无聊吗? ================================================================ 对不起,我没看出来,大概你是强制要求你不是用open class,把一个类的方法都写在一块 吧! 那我就不太明白了,大家说的open class 这么好,你真么没有用呢? 有这么一个人,他很迷恋飞机的速度,以至于他每天上班,都和别人说,飞机多快阿,你干吗不做飞机上班呢?你为什么强制不做飞机呢?为什么非要做公交车上班呢?那我就不太明白了,大家都说做飞机多么多么快,你真的不做飞机上班吗? 知道什么叫高射炮打蚊子吗?一个model就那么点逻辑用不着open class,除非你吃饱了撑的,非要做飞机上班,然后一边说:你看你看,做飞机上班多麻烦阿,还要去机场,还要安检,还要候机,看到没有,这说明做飞机是不合适的?你说这是怎么回事呢? 引用 3、编程语言火不火和社区关系不大,国内用C/C++的人多的很,你看见哪个C++论坛火了吗?
======================================================================= 当然有了,比如国内cppblog, vckbase都有很高质量的文章,我今天刚查了一下googlep排名居前的ror论坛 嘿嘿,偷换概念玩的挺熟! JavaEye也有大把很高质量的Ruby文章。而且JavaEye的流量比那两个网站大得多。 引用 你这种代码是有严重的问题的,一旦程序执行到中间出错退出,数据库连接就无法被正常关闭。你之所以一直没有碰到问题是因为你开发的系统没有遭遇大并发和高负载,算是走狗屎运罢了。
======================================================================== 这样说的话,走狗屎运的是java, 那不如当初都去用asp,因为当时asp,php,jsp中只有asp的connection是ref count一定会自动关闭的,而当时java的connection等等都是必须显式关闭。 按照你的逻辑,ruby那就更加是中大奖了,因为Rails压根就不需要关闭数据库连接,我就是一直开着。关闭都省了。 |
|
返回顶楼 | |
发表时间:2008-04-24
mcpssx 写道 1,我在这里重申,我并没有说ruby一无是处,而是指出这东西就跟C++一样,是一个因为特性太多导致难于驾驭的东西,特别是针对团队而言,这时候起作用的就是木桶理论。
14年前,我刚毕业做开发的时候,用clipper做mis,这是dbase公司的工程师出来开发的一个编译性的产品,这其中就有闭包 bBlock := { |nArg| nArg + 1 } ? EVAL(bBlock, 1) 应该大家都是学习smalltalk带来的语法,这玩意 不能说没用。 后来主要做AutoLisp和 c++的CAD处理,什么watcom c++ , high c++ 后来2000年左右炒股浪潮中,喜欢上了“分析家”,跑到了金融行业,就是现在大智慧新一代的前身 那时候觉得分析家公式体系思想不错,就想自己玩一个,开始研究lex/yacc, coco/r之类的分析器,最后觉得不如借用现有脚本, 先用python,后来发现了ruby,因为ruby的操作符重载,语法确实比python容易作为实现分析家公式系统,这大概就是现在的DSL吧?那时候rails连个影子都没有。 其实很多人都把各种语言用在金融计算,比如国内的ocaml.cn的创建者就是一个做系统交易的,而“之乎者”在闽发当年大谈江恩理论,当时写了个半成品的分析软件,然后跑到了加拿大写了个blogtrade后来改名AIOTrade,现在好像在写Erlang, Scala的IDE。 还有什么J语言,K语言等等。 我以为,web开发最好不要投入太多精力去搞各种花样,最好用在其他更有意义的地方。 我一看到程序员晒老皇历就觉得特有意思,要不我也晒晒17年前我在286上面玩汇编的经历? |
|
返回顶楼 | |
发表时间:2008-04-24
我说句实在话。。。。。。能赚到钱就是好东西
|
|
返回顶楼 | |
发表时间:2008-04-25
crazy.j 写道 我说句实在话。。。。。。能赚到钱就是好东西
你说的太实在了,你这句话有助于我赚钱不? 对于ruby观望者,首要目标是希望得到全面客观的评估。这里的全面,就不止是技术方面,还有社区商业支持、企业接受情况、适用领域、成熟性稳定性、就业市场、学习成本等非技术方面,从而不仅要对它的现状有所了解,还要对它的未来有个准确的预测,以让自己不至陷入落伍或盲进的境地。 对于ruby学习者或使用者,这些非技术领域或者本来就是见仁见智不太好说清,或者他心里已经有笔账没必要跟其它人说,或者已经处于无法选择而只须面对的境地说了也白说,而且说了还要承担很多责任。对于他们最有意义的是当前的讨论有助于现在的学习或工作。所以,话题就会集中在能着地的点上。 观望者会批评使用者回避那些非技术领域的评估,学习/使用者会批评观望者空对空。 javaeye好几次关于比较ruby语言的贴,普遍现象是观望者充当了批评者,学习/使用者充当了辩护者。 观望者拿质疑作结论是个普遍套路。对真正的使用者来说,一点营养都没有。 我期望的形式是:观望的人提出疑问,学习/使用者分享经验,实际使用的人分享一些实战经验。 非技术领域的评估重不重要?我觉得也相当重要。对于还没接触它的普通人来说,甚至是更重要。 但无论如何,这是两个既有关联又相对独立课题,不能绕一起说,尤其是不能有意绕在一起说。如果非要在一个贴讨论,须先简要声明,以避免误会。 |
|
返回顶楼 | |
发表时间:2008-04-25
引用 吵架的最高境界莫过于贬低对方的为人和水平,他水平那么差,怎么可能做出来好东西?
我和robbin前面的话也有类似意味,我就质疑你的ruby了解程度,就质疑你言论的可信度。难怪mcpssx 终于忍不住报料身世,以正其名。 其实。。。。。。 我还是有怀疑 - 虽然你所列的那两个稀奇古怪的语言我果然没听说过 - 你对ruby到底了解有多少? 为什么针对讨论对象ruby,打死都不肯出一行ruby代码呢?(非要用clipper),也不肯应讨论之需拿出一个能跑通的对应java代码? 讨论过程中,对我提出的“对比语言不应比较是否能实现,而应比较实现的好坏”这一基础,也不作置评。好像是两条线,你说你的,我说我的。整个讨论就没有"辩论达成统一再展开"的过程。 我后面的回复,大概也只能在讨论风格上说说自己的看法。具体问题上,有点着不上力。 |
|
返回顶楼 | |
发表时间:2008-04-25
引用 3,时间对rails不利,目前国内发展2年任然没有火起来,光看几个ruby论坛就知道人气了
以及后面robbin针对这的回复,都应属于“非技术因素”,应特别标明。 引用 1,类型推导讲削弱动态语言的影响,过去的一个典型就是ocaml,他不需要变量类型声明,却可以取得与C语言同等的效率。现在BOO,C#也开始加入。
AST宏可能会加入,目前D,BOO语言都具有自我扩展语法的能力,虽然还不lisp/scheme那么强大。 这点同意。但这个方向对于一些主流编程语言才刚刚上路,对于另一些还没上路,甚至没有准备上路 - 这是现在时态的非技术因素。 引用 我更倾向ruby将成为下一个C++,同样都是特性最多,同样都是麻烦最多。
又见类比,请列出具体场景。 引用 有一种语言,叫C++,它包含了无数特性,总有人说可以合适裁剪,结果大多以一团浆糊搞终?
还有一钟perl语言,其实你要规范的写也不是很难懂的! 这不是类比,这是暗示。其实ruby广告词好多类似这样写:有一种语言,叫smalltalk,它很OO,ruby也是;有一种语言,叫lisp,它很FP,ruby也是;有一种语言,叫python,它很简炼,ruby也是。。。 暗示嘛,你不是第一个,也必不是最后一个。 。。。。。。 我还是怀疑你会不会用ruby的closure 。。。。。。 (呜。。。我怎么这样啊,人家都用ruby实现分析家公式系统了,而closure在ruby里那么基础。。。) 引用 我觉得最高的就是尽快搞出几个phpnuke,wordpress这样的系统来,否则都是些颠来倒去的分页啊,用哪种应用服务器之类的东西。
这是现在时态的非技术因素。 |
|
返回顶楼 | |