Ruby,一種簡(jiǎn)單快捷的面向?qū)ο螅嫦驅(qū)ο蟪绦蛟O(shè)計(jì))腳本語言,在20世紀(jì)90年代由日本人松本行弘(Yukihiro Matsumoto)開發(fā),遵守GPL協(xié)議和Ruby License。它的靈感與特性來自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp 語言。由 Ruby 語言本身還發(fā)展出了JRuby(Java平臺(tái))、IronRuby(.NET平臺(tái))等其他平臺(tái)的 Ruby 語言替代品。Ruby的作者于1993年2月24日開始編寫Ruby,直至1995年12月才正式公開發(fā)布于fj(新聞組)。因?yàn)镻erl發(fā)音與6月誕生石pearl(珍珠)相同,因此Ruby以7月誕生石ruby(紅寶石)命名。
關(guān)于Ruby的詳細(xì)自學(xué)教程:(點(diǎn)擊下方“了解更多”,記得收藏哦~)
語言特點(diǎn):
完全面向?qū)ο笤赗uby語言中,任何東西都是對(duì)象,包括其他語言中的基本數(shù)據(jù)類型,比如整數(shù)變量沒有類型Ruby的變量可以保存任何類型的數(shù)據(jù)。任何東西都有值不管是數(shù)學(xué)或者邏輯表達(dá)式還是一個(gè)語句,都會(huì)有值。ruby語言很優(yōu)雅,可以做到不需要注釋就可以讀懂。優(yōu)點(diǎn):
語法簡(jiǎn)單普通的面向?qū)ο蠊δ?類,方法調(diào)用等)特殊的面向?qū)ο蠊δ?Mixin,特殊方法等)操作符重載錯(cuò)誤處理功能迭代器和閉包垃圾回收動(dòng)態(tài)載入(取決于系統(tǒng)架構(gòu))可移植性高.不僅可以運(yùn)行在多數(shù)UNIX上,還可以運(yùn)行在DOS,Windows,Mac,BeOS等平臺(tái)上適合于快速開發(fā),一般開發(fā)效率是JAVA的5倍語言標(biāo)準(zhǔn)
Ruby的變量有一定的規(guī)則,以$開頭的一定是全局變量,以@開頭的都是實(shí)例變量,而以@@開頭的是類變量。常數(shù)則以大寫字母開頭;這種方法,對(duì)文本編輯器的命令補(bǔ)全很有幫助,如在vim下先鍵入$及開頭字母,再敲擊Ctrl+p,則可專門補(bǔ)全本文件以及關(guān)聯(lián)文件中的全局變量,perl與php亦有此優(yōu)點(diǎn)。
設(shè)計(jì)理念
已經(jīng)定義的類可以在運(yùn)行時(shí)修改Ruby是動(dòng)態(tài)語言,你可以在程序中修改先前定義過的類。 也可以在某個(gè)類的實(shí)例中定義該實(shí)例特有的方法,這叫做單例方法。
減少編程時(shí)候的不必要的瑣碎時(shí)間,令編寫程序的人高興,是設(shè)計(jì) Ruby 語言的 Matz 的一個(gè)首要的考慮;其次是良好的界面設(shè)計(jì)。他強(qiáng)調(diào)系統(tǒng)設(shè)計(jì)必須注重人性化,而不是一味從機(jī)器的角度設(shè)想。
“ 人們特別是電腦工程師們,常常從機(jī)器著想。他們認(rèn)為:‘這樣做,機(jī)器就能運(yùn)行的更快;這樣做,機(jī)器運(yùn)行效率更高;這樣做,機(jī)器就會(huì)怎樣怎樣怎樣。’實(shí)際上,我們需要從人的角度考慮問題,人們?cè)鯓泳帉懗绦蚧蛘咴鯓邮褂脵C(jī)器上應(yīng)用程序。我們是主人,他們是仆人。 ”
遵循上述的理念,Ruby 語言通常非常直觀,按照編程人認(rèn)為它應(yīng)該的方式運(yùn)行。
Ruby 是完全面向?qū)ο蟮模喝魏我稽c(diǎn)數(shù)據(jù)都是對(duì)象,包括在其他語言中的基本類型(比如:整數(shù),布爾邏輯值),每個(gè)過程或函數(shù)都是方法。
下面是一個(gè)在標(biāo)準(zhǔn)輸出設(shè)備上輸出Hello World的簡(jiǎn)單程序,這種程序通常作為開始學(xué)習(xí)編程語言時(shí)的第一個(gè)程序:
1 #!/usr/bin/env ruby
2 puts “Hello, world!”
(復(fù)制網(wǎng)址鏈接到瀏覽器,記得收藏)