学习Ruby的10条理由
最近Ruby On Rails开发相当的火热。这是一种崭新的Web程序开发方式。利用其先进的建构能为用户快速搭建Web平台提供帮助。
但很多开发者还不是很清楚为何自己需要转换到Ruby上去。h3raLd为大家列出了10条为何要学习Ruby的理由。
1.你可以使用所有语言的强大功能
首先是错误处理功能,要知道这可是任何一个做高级开发的人员必须掌握的功能。而在PHP里面,你只能将出错的内容打印在屏幕上,然后慢慢猜测是哪出了问题。而Ruby采用的是类似C++的try/catch模块法。
其次Ruby的名字空间也十分易用。再加上内建强大的正则表达式处理器和各种重载操作符,一切你能在其他语言中想到的实用技术,在这里都能找到。
2.你会爱上Ruby在细节方面的可爱之处
3.你不用再打什么分号了
在Ruby中,就和在Python中一样。不过这样你也会失去将所有程序写在同一行的机会,有的人可是很喜欢这样做的,希望你不是这样。
4.每个东西都是一个对象,就和现实一样
当我开始学习Java时,他们告诉我每个东西都是一个对象,于是我问:
“那么14和374346.678也是对象了?”
“傻瓜,他们只是数字!”
但是在Ruby中,所有数字、字符串、布尔量都是对象!这意味着你可以这样写:
"YOU SHOULDN'T ALWAYS USE CAPITALS".lowcase
到时屏幕上就会显示:you shouldn't always use capitals
而在PHP中,你得这样写:strtolower("YOU SHOULDN'T ALWAYS USE CAPITALS")
看看吧,你节省了时间,节省了括号,最重要的是,这样的程序更具可读性。将每个东西都当作一个对象后,显然对扩展你的思维极具帮助。
5.每个东西都有一个值
你将不再会使用return来返回一个值了。所有的Ruby语句都会返回一个值,这意味即使你在末尾没返回值,Ruby也会自动返回一个值。
6.你能随意在不同开发环境中自由切换
当你使用系统提供的类或者他人的类进行开发后一段时间,突然觉得某些函数或方法写得不好,应该自己来写一个。如果你在传统开发中,你有以下选择:
a.你修改原来那个类的源代码。但是一般都不推荐这样做。
b.你从那个类继承出一个新类,然后你自己慢慢添加代码。但是这会影响到你之前写就的代码。
c.你放弃,然后自己另外创建一个新类。这或许很好,但是却很费时费力。
在Ruby中,你只需简单的把新方法加入到原来的类中就OK。这其中不涉及任何修改源代码的行为。比如你想自动转换从米到英寸,你可以为Numeric这个数字类添加一个新方法:
class Numeric
def feet
self*3.2808399
end
end
从现在开始,你就为所有数字都添加了一个feet方法了。
5.feet #=> Returns 16.4041995
7.Ruby不支持多重继承
8.你不再需要XML了
对,我得承认XML的应用极其广泛。但是说实话,XML给人的第一印象的确很糟,结构不清晰,标记复杂,很难读懂。而且对程序来说,也很难描述和分析。因 此Ruby最爱的标记语言是YAML。这并不是说Ruby不支持解析XML,Ruby还是支持XML的,只是很多开发者认识到YAML的优异性能而从 XML转移到了YAML
9. Lambda is much more than a Greek letter
10.你能在Rails上使用它
你会发现Ruby on Rails是最好的开发模式。Rails是集成于Ruby其中的,因为Ruby提供了其他任何语言无法提供的优异性能。
cnBeta编译
消息来源:cyberarmy
-
you can easily find that the author did not learn any C language.
these are the disadvantages:
3.你不用再打什么分号了
4.每个东西都是一个对象,就和现实一样 7.Ruby不支持多重继承 8.你不再需要XML了 9. Lambda is much more than a Greek letter - 回复 支持(1) 反对(2) 举报
-
请不要从水渠转技术贴.
php可以try/catch是很早以前的事了,至于作者喜欢用echo,是作者自己的事。
第6条理由.开始说 "a.你修改原来那个类的源代码。但是一般都不推荐这样做。" 后面的例子却是完完全全a的做法。 - 回复 支持(4) 反对(2) 举报
-
我觉得ruby的语法很混乱,而且对编程效率没有本质的提升,ruby是因为有rails才好用,其他的语言你找一个好的框架照样可以好用。但它的确给目前很多编程框架以指导方向。
最后强调,我很喜欢分号,没有分号我就看着不舒服,php早就有try catch,不支持xml算什么好处?
其实ruby最精髓的就是可以为一个类动态创建方法,它的应用也是这么衍生来的。 - 回复 支持(7) 反对(2) 举报
-
的确,也觉这篇文章类似在讨论Basic 和 c /c 之间的情况。
从这种类比来看,Basic简单而且使用的人很多(国家的计算机等考试好像就有它吧),但论强悍和实用还是比不上后者。
看文章对Ruby的介绍,感觉它就如同Basic - 回复 支持(2) 反对(0) 举报
-
ruby 的语法简单清楚 也支持XML 只是说轻量级的动态语言或者更适应轻量级的描述语言
动态添加方法是动态语言的优势之一吧 不光是ruby
第四点是很令人喜欢的 彻底的oop - 回复 支持(0) 反对(1) 举报
“学什么都一样,只是工具而已。” 这种说法看似能抬高评论者的品位,但实际上空泛没营养。学什么都一样,只是工具而已。看来这个新闻又该惹来大篇的议论了- 提高品位倒不敢当,我自认为没什么品味。那你觉得什么有营养?什么不空泛?
- 回复 支持(0) 反对(0) 举报
-
连面向人群都含糊不清的文章……
ruby 是给 php 人员用的
j2ee 开发人员可以浏览或者跳过 .net 人员可以思考 python 人员可以无视 普通用户可以鄙视,毕竟是日本人的东西 - 回复 支持(1) 反对(0) 举报
-
上面的特点 javascript 都有
1.你可以使用所有语言的强大功能
而Ruby采用的是类似C 的try/catch模块法。 //javascript 笑了 其次Ruby的名字空间也十分易用。 再加上内建强大的正则表达式处理器 //XX电脑广告语:再加上强大的立式机箱 和各种重载操作符 //亲爱的,我把 运算重载成 - 了 2.你会爱上Ruby在细节方面的可爱之处 //你会爱上javascript在细节方便以及各种便利之处 3.你不用再打什么分号了 // javascript 又 笑了 4.每个东西都是一个对象,就和现实一样 //javascript 不想看下去了 5.每个东西都有一个值 //啊哈,我想最后返回 null ,不幸的是我忘记了 6.你能随意在不同开发环境中自由切换 //javascript: 不就是 prototype 么 7.Ruby不支持多重继承 //C 支持多重继承 8.你不再需要XML了 //你不需要学 SQL 但你需要学 HQL.你不需要学一行代码,但是你需要学一年的配置文件 9. Lambda is much more than a Greek letter // javascript can do 3. 10.你能在Rails上使用它 //Rainls 现在有各种语言版本的实现 - 回复 支持(1) 反对(0) 举报
-
4.每个东西都是一个对象,就和现实一样
当我开始学习Java时,他们告诉我每个东西都是一个对象,于是我问:
“那么14和374346.678也是对象了?”
“傻瓜,他们只是数字! ” 但是在Ruby中,所有数字、字符串、布尔量都是对象! 这意味着你可以这样写: "YOU SHOULDN''''T ALWAYS USE CAPITALS".lowcase 作者对Java的印象不知道是不是还停留在1.4时代……Java5开始就已经可以对基本数据类型进行自动拆封装了 再者说,一个字符串……对于任何面向对象的语言来说……都应该能象上面这样用吧…… - 回复 支持(0) 反对(0) 举报
php apache算稳定可靠的平台 你也太鼠目寸光了吧因为Ruby提供了其他任何语言无法提供的优异性能。 这句话纯属误导。ROR到目前为止仍然没有出现一个稳定可靠的服务器平台,类似PHP Apache那样的。- 那你觉得什么算是稳定可靠的平台?
- 回复 支持(1) 反对(0) 举报
- 西方人学中国,学去火药造枪炮。日本人学中国,学去知识打中国。咱们见到了有用的东西却不要,难道又要摆天朝风度吗?有好的东西就要拿来,管他是谁的,管他是在哪里的,学好了,为己所用,壮大自己,这才是真正的爱国!
- 回复 支持(1) 反对(0) 举报
- 4.每个东西都是一个对象,就和现实一样 当我开始学习Java时,他们告诉我每个东西都是一个对象,于是我问: “那么14和374346.678也是对象了?” “傻瓜,他们只是数字! ” 但是在Ruby中,所有数字、字符串、布尔量都是对象! 这意味着你可以这样写: "YOU SHOULDN'T ALWAYS USE CAPITALS".lowcase 作者对Java的印象不知道是不是还停留在1.4时代……Java5开始就已经可以对基本数据类型进行自动拆封装了 再者说,一个字符串……对于任何面向对象的语言来说……都应该能象上面这样用吧……
- JAVA是95
- 回复 支持(0) 反对(0) 举报
- 有一些理由比较吸引人,有些理由根本就不是优点。 一个足以让我不使用它的理由:日本人写的。 别和我说什么编程无国界,那你们干吗还要研究中国的技术?都用世界的好了。
- 貌似寫這篇文章的不是日本人,原文是英文的,估計對象群眾不是偉大的國人 建議你也不要用日產的東西,大家一起抗日好了 只會嘴上說說
- 回复 支持(0) 反对(0) 举报

订阅新闻