为什么有Java地方就会有Ruby出现

2024-12-30 22:12:24
推荐回答(1个)
回答1:

最近笔者在国外的论坛就发现了有些网友在争论Java和Ruby为什么总会绑定在一起出现,笔者就摘录下最经典业内评论与国人一同分享。 争论焦点一:阴谋论 1.Java的书籍在近年业界,可以算是挣取利润最大的书籍,为了保持这种利润增长势头,出版商不得不在新的领域或开发语言方面出版新书来吸引读者的眼球,现阶段关于ruby的文档说明资料很少,而且借着Java的余温的Ruby吵得火热,也让世人的注意力自然而然从Java转向Ruby,同时也可以让Ruby大买一比。可能读者会有这样的疑问,为什么非得是从Java至Ruby这样的书会热卖,而不是《From C# to Ruby》这样的书?因为大部分的微软用户,有些循规守旧,已经沉迷于并且不愿再改变现状。Java用户比微软用户更机敏,这就是他们与Ruby用户所共有的。换句话说,你可以将开发者分成两个阵营:拥微软和反微软。在反微软阵营中,他们是有独立思考性的,不可能坚持任何的单一解决办法。这样从Java转向Ruby比从C#到Ruby的事情会更自然发生,也是出版商们,敏锐的商机所在。 2 .还有一点让我们不得不奇怪,.NET与Java一直在争论不休,似乎在最近销声匿迹。有些人认为在这场争论中的所有人都变得成熟了并且决定和平相处了?或者还是有些人想通过展示Ruby而移开人们对Java的注意力而受益呢?这个还是留给谋略者的们去说明可能会更有说服力。 个人观点:我认为Ruby是一种好的脚本语言,但是在使用上却十分奇怪(我更愿意用Python),迟早一些人会把这个RoR(Ruby on Rail)做出企业级应用产品,就象Java一样,但是我真的怀疑RoR能否做到这点。简而言之,这个RoR实际就是个冒牌的“圣杯”,只会用来将那些低水平的人的注意力从复杂的企业架构思想上移开,不会有自已的思维模式。 争论焦点二:语言选择论 Ruby近期的高频率出现也可以看出它是一种非常好的开发语言。它的优点很多,例如它的纯面向对象,它的简单性与表达性,它的封闭性,它的从其他语言象Perl 、Python和 Smalltalk中吸取他们语言中优点的部分,同时去掉这些语言中不足之处的设计理念,等等。但是在这些优点之外,也有一些我们不好评论的事情。对于它是否比Python更好(真的,这两个语言在很多方面是相似的),人们已经开始争论了起来。但就我个人而言,Python对我并没有足够的吸引力让我下功夫去研究它。 个人观点:脚本语言一直难堪重任,在银行系统,铁路系统,国家安全机构,大型的开商运营商等等,敢用这些脚本语言做为主流开发吗,答案是否定的,首要的选择的是Java或C#。 总结:有关Ruby的话题出现地特别多,尤其是在Java论坛里,原因可能就是许多的Java使用者更喜欢尝试新技术(这与C和C++正相反)。长期以来,人们已经非常舒服地使用Java,同时也开始看到了在某些方面,它不是用于完成任务的最好工具。这些早期的Java使用者已经开始寻找能够满足他们的需要,而这种需要是Java不能提供的,他们发现Ruby正是他们要找的。正如一些人说的(我记不得在哪看到的了),早期的Java迷们和沉迷者已经悄然离开了,其中一部分转到了Ruby。 在这儿,我并不是想表述对于每个项目每个人都应当摒弃Java而转到Ruby开发这样的想法。在我工作的地方,由于性能的原因表面看来我们仍然依靠C++。就个人而言,我认为Java成熟和快捷,对于我们的应用程序开发,Java能够成功地替代C++。我绝对不会用Ruby写我们的processing-intensive模块。然而我喜欢在这些模块里用Ruby搭桥,因为它的表达性,动态的Duck-typing,轻松的元程序编写,这就使得我们能在一个应用级的开发中,对新想法做出快速的原型。这就是Ruby星光闪现的一个方面。 早在1996年,我就开始使用Java。诚实地讲,Java不再象过去那样让我兴奋,现在Ruby让我这样。但这并不意味着我会放弃Java或抨击Java,或不再提倡它。我仍然会告诫所有的开发者们应当从C++转向Java,在平等的前提下,因为Ruby有更好的性能,我会选择Ruby来开发。对于大多数Processing-Intensive应用,如果必要在前提下,我会使用Java或C++。