几点常识让你知道Ruby优点

开发 开发工具
你能使用所有语言的强大功能;Ruby在细节方面的可爱之处;你不用再打什么分号了;每个东西都是个对象,就和现实相同这些都是Ruby优点。

Ruby on Rails开发框架被越来越多的应用。很多程序员就认为没有必要灾区花费时间去学习Ruby语言。但实际上,Ruby语言的掌握还是有很大好处的。下面就来列举一下Ruby优点都体现在哪里。#t#

Ruby优点1.你能使用所有语言的强大功能

首先是错误处理功能,要知道这可是所有一个做高级研发的人员必须掌控的功能。而在PHP里面,你只能将出错的内容打印在屏幕上,然后慢慢猜测是哪出了问题。而Ruby采用的是类似C++的try/catch模块法。
其次Ruby的名字空间也十分易用。再加上内建强大的正则表达式处理器和各种重载操作符,一切你能在其他语言中想到的实用技术,在这里都能找到。

Ruby优点2.你会爱上Ruby在细节方面的可爱之处

Ruby优点3.你不用再打什么分号了

在Ruby中,就和在Python中相同。不过这样你也会失去将所有程式写在同一行的机会,有的人可是非常喜欢这样做的,希望你不是这样。

Ruby优点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")
看看吧,你节省了时间,节省了括号,最重要的是,这样的程式更具可读性。将每个东西都当作一个对象后,显然对扩展你的思维极具帮助。

Ruby优点5.每个东西都有一个值

你将不再会使用return来返回一个值了。所有的Ruby语句都会返回一个值,这意味即使你在末尾没返回值,Ruby也会自动返回一个值。

Ruby优点6.你能随意在不同研发环境中自由转换

当你使用系统提供的类或他人的类进行研发后一段时间,忽然觉得某些函数或方法写得不好,应该自己来写一个。如果你在传统研发中,你有以下选择:
a.你修改原来那个类的原始码。不过一般都不推荐这样做。
b.你从那个类继承出一个新类,然后你自己慢慢添加代码。不过这会影响到你之前写就的代码。
c.你放弃,然后自己另外创建一个新类。这或许非常好,不过却非常费时费力。

在Ruby中,你只需简单的把新方法加入到原来的类中就OK。这其中不涉及所有修改原始码的行为。比如你想自动转换从米到英寸,你能为Numeric这个数字类添加一个新方法:
class Numeric
def feet
self*3.2808399
end
end
从目前开始,你就为所有数字都添加了一个feet方法了。
5.feet #=> Returns 16.4041995

Ruby优点7.Ruby不支持多重继承

Ruby优点8.你不再需要XML了

对,我得承认XML的应用极其广泛。不过说实话,XML给人的第一印象的确非常糟,结构不清晰,标记复杂,非常难读懂。而且对程式来说,也非常难描述和分析。因 此Ruby最爱的标记语言是YAML。这并不是说Ruby不支持解析XML,Ruby还是支持XML的,只是非常多研发者认识到YAML的优异性能而从 XML转移到了YAML

Ruby优点9. Lambda is much more than a Greek letter

Ruby优点10.你能在Rails上使用他

你会发现Ruby on Rails是最佳的研发模式。Rails是集成于Ruby其中的,因为Ruby提供了其他所有语言无法提供的优异性能。

责任编辑:曹凯 来源: 博客园
相关推荐

2009-10-15 13:48:13

服务器维护常识

2017-03-13 10:35:10

JavaScript错误调用栈

2017-11-09 15:29:21

CPU温度常识

2010-03-18 18:11:12

无线Mesh网络

2017-05-16 11:09:56

2009-12-31 10:59:22

ADSL技术原理

2018-06-04 10:43:33

2009-11-10 16:27:45

VB.NET指针

2010-03-15 14:33:09

Python线程编程

2012-06-27 16:02:42

软件工程师开发

2013-12-04 17:01:07

Linux命令Uptime命令

2021-03-03 14:41:00

大数据加班面试

2023-09-04 07:54:06

2012-03-14 09:02:47

云计算集中计算分布式计算

2009-11-05 10:56:31

WCF通讯

2017-11-08 10:54:32

大数据算法机器学习

2021-04-04 22:58:20

互联网IP网络协议

2009-12-16 09:13:05

Ruby赋值语句

2020-10-29 10:26:28

DevOps软件自动化

2009-12-09 11:04:01

PHP模板优点
点赞
收藏

51CTO技术栈公众号