有时候,重要的不是你用开发语言来做什么,而是你所在的环境在用这个语言,所以你就用了,而对于我们,更多的时候无法去选择自己喜欢的语言区工作。例如你在阿里巴巴,框架就是Java的,所以你就必须用Java;例如你开发Android应用程序,那么同样的你也必须用Java;例如你开发Windows Phone应用程序,那么你就必须用C#;这就像我们无从选择自己出生的家乡,自己的生老病死。
Java/C#这些语言有它们固有的历史积淀,从它们出生的开始到现在经历数十载的更新和优化。同样的,Ruby作为现如今最为年轻的语言之一,也在慢慢的变化。Ruby语言可以用在当今项目的任何一个领域,任何一个工程,譬如Web,UI,自动化工厂……,Ruby语言以它特有的天赋,完成人们赋予它的各种使命。
Ruby,作为一种完全面向对象的开发语言,和其他面向对象语言有相同的特征,同时,也有自己的特点。
文章说明:本文的所有内容都是基于读者有相应的面向对象思想进行介绍的,虽然不是强调必须会Java/C++等面型对象的语言,但是具备面向对象基础还是需要有的。如果读者还没有接触过如Java等语言,可以忽略文章中的举例,并建议你看看面向对象的东西。
关于 Ruby
Ruby 语言由松本行弘于1993年2月24日开始编写,直到1995年12月才正式公开发布。传说中,Ruby 语言诞生于Perl、Python和Smalltalk 之间,集合各种语言的精华而摒弃它们的糟粕,最终应用而生。
笔者在遇到Ruby之前,使用过C/C++/C#,Java,PHP,Shell,TCL等各种开发语言,而最后由于工作需要遇到Ruby,从此再也没有使用和学习其他语言。
从今天开始,笔者就和大家一起进入Ruby的世界,看看Ruby究竟有哪些地方吸引了笔者和笔者一样的Ruby迷。
Ruby 和其他语言的比较
Ruby 是一种完全面向对象的语言,在Ruby的世界里面,没有绝对的数据类型。其在在正则表达式方面,借鉴了Perl语言;在可读性方面借鉴了Python语言;在继承性和面向对象等方面,借鉴了Java语言的单继承,Smalltalk语言的完全面向对象;而更多的时候,我们发现Ruby具备Java/C#等所有面向对象语言所具备的优势,而又优于Java/C#等这些传统的面向对象语言。下面就简单地分析常见面向对象开发语言与ruby的异同。
(1)Java
(2)Python
(3)Perl
(4)Smalltalk