给你十条学习Ruby语言的理由
日期:2007年10月19日 作者: 查看:[大字体 中字体 小字体]-
最近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了
- [1] [2] 下一页
-
- 给你十条学习Ruby语言的理由 相关文章:
- ·路由器口令及IOS损坏的恢复
- ·利用UNIX的TFTP和RCP配置路由器
- ·路由器性能和指标详解
- ·Cisco管理需要了解的默认路由
- ·Cisco路由器常用命令
- ·通过宽带ADSL路由多机共享上网
- ·进入Cisco路由器配置模式
- ·加强边界路由器安全防护的几个步骤
- ·关于三层交换机与路由器的比较
- ·不用正常命令退出路由器的故障
- 给你十条学习Ruby语言的理由 相关软件
- ·转折点:自由的陨落宣传片
- ·《铸造自由》v1.9.23升级补丁下载
- ·自由推箱子
- ·《倚天Ⅱ自由世界》客户端
- ·《QQ自由幻想》最新补丁1.05
- ·《倚天Ⅱ》自由世界070731-070920补丁BT种子
- ·《倚天Ⅱ:自由世界》070913-070920补丁BT种子
- ·一部由法官创作的反腐力作----
- ·《自由战士》
- ·生命由此开始
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
精品推荐
热点TOP10
- ·图象处理中的边缘检测------canny算子
- ·EZ-USB 68013A开发指南
- ·数值计算程序大放送-特征值和特征向量
- ·ARM的嵌入式Linux移植体验之BootLoader
- ·Visual C++ ADO数据库编程入门
- ·智能手机Smartphone开发导语
- ·利用 wordXP 实现自动排班
- ·[分形]DLA团簇模型的摸拟
- ·DENX U-Boot及Linux使用手册
- ·Visual FoxPro 9.0 SP2正式版下载
- ·VS2005控件的问题解决办法
- ·Cookie是什么?用法是怎样?与SESSION有什么区别?
- ·J2SE API读取Properties文件的六种方法
- ·Silverlight、JavaFX、Flex技术比较
- ·Silverlight将不再支持ArrayList类型
- ·教程:XSLT Designer快速入门指南
- ·创建Web应用和Struts框架配置文件实例
- ·Spring入门指引:理解Spring的打包方式
- ·UDT协议-基于UDP的可靠数据传输协议
- ·解析KJava在移动设备开发中的应用
