1. 程式人生 > >Ruby完全自學手冊(圖文教程)

Ruby完全自學手冊(圖文教程)

Ruby 簡介

Ruby,一種為簡單快捷面向物件程式設計(面向物件程式設計)而創的指令碼語言,由日本人松本行弘(まつもとゆきひろ,英譯:Yukihiro Matsumoto,外號matz)開發,遵守GPL協議和Ruby License。Ruby的作者認為Ruby > (Smalltalk + Perl) / 2,表示Ruby是一個語法像Smalltalk一樣完全面向物件、指令碼執行、又有Perl強大的文書處理功能的程式語言。其他特色包括:

  * 運算子過載

  * 自動垃圾回收

  * 弱型別(動態型別 | 標量變數)

  * 變數無需宣告 (不必事先宣告變數)

  * 在Windows上,載入DLL

  * 巨大的標準庫(函式庫;Library)

由 Ruby 語言本身還發展出了JRuby(Java平臺)、IronRuby(.NET平臺)等其他平臺的 Ruby 語言替代品。Ruby的作者於1993年2月24日開始編寫Ruby,直至1995年12月才正式公開發佈於fj(新聞組)。

開始學習:Ruby完全自學手冊(圖文教程)

歷史

  Ruby的作者於1993年2月24日開始編寫Ruby,直至1995年12月才正式公開發佈於fj(新聞組)。之所以稱為Ruby,是因為Perl的發音與6月的誕生石pearl(珍珠)相同,因此Ruby以7月的誕生石ruby(紅寶石)命名。

  Ruby明顯比其他類似的程式語言(如Perl或Python)年輕,又因為Ruby是日本人發明的,所以早期的非日文資料和程式都比較貧乏,所以現在在網上仍然可以找到Ruby的資料太少之類的批評。約於2000年,Ruby開始進入美國,英文的資料開始發展。

  Ruby現在的穩定版本是1.8.6(2007年3月12日釋出)。

  2008年8月Ruby 1.8.7-p72 和 1.8.6-p287 釋出。先前的釋出版本不完全,新的版本包括了對之前釋出的關於dl的漏洞的修正。

Ruby 的理念

  減少程式設計時候的不必要的瑣碎時間,令編寫程式的人高興,是設計 Ruby 語言的 Matz 的一個首要的考慮;其次是良好的介面設計。他強調系統設計必須強調人性化,而不是一味從機器的角度設想。

  “ 人們特別是電腦工程師們,常常從機器著想。他們認為:“這樣做,機器就能執行的更快;這樣做,機器執行效率更高;這樣做,機器就會怎樣怎樣怎樣。”實際上,我們需要從人的角度考慮問題,人們怎樣編寫程式或者怎樣使用機器上應用程式。我們是主人,他們是僕人。 ”

  遵循上述的理念,Ruby 語言通常非常直觀,按照程式設計人認為它應該的方式執行。

  Semantics

  Ruby 是完全面向物件的:任何一點資料都是物件,包括在其他語言中的基本型別(比如:整數,布林邏輯值),每個過程或函式都是方法。

Ruby的Hello World程式

  下面是一個在標準輸出裝置上輸出Hello World的簡單程式,這種程式通常作為開始學習程式語言時的第一個程式:

  #!/usr/bin/env ruby

  puts "Hello, world!"

Ruby概述

  Ruby是一種功能強大的面向物件的指令碼語言,她可以使您方便快捷地進行面向物件程式設計.有時使用像Smalltalk、Eiffel或C++這樣正式的面嚮物件語言來開發一些小專案顯得有點"小題大做",而Ruby剛好可以滿足這些面向物件程式設計的需求.當然了,您也可以使用Ruby進行普通的面向過程程式設計.

  Ruby的文字處理能力極強,與Perl不分伯仲.同時,Ruby的語法簡單,還有異常處理以及迭代器等構造,使程式設計變得簡單明瞭.

  簡而言之,您可以像使用Perl一樣方便快捷地進行面向物件的開發.怎麼樣?趕緊試一試吧!

  Ruby是由松本行弘開發的免費軟體.

  Ruby的特長

  語法簡單

  普通的面向物件功能(類,方法呼叫等)

  特殊的面向物件功能(Mixin,特殊方法等)

  操作符過載

  錯誤處理功能

  迭代器和閉包

  垃圾回收

  動態載入(取決於系統架構)

  可移植性高.不僅可以執行在多數UNIX上,還可以執行在DOS,Windows,Mac,BeOS等平臺上

Ruby名字的由來

  首先明確一點,Ruby並不是其他單詞的縮寫。受Perl的影響,Matz也想用一種寶石來命名他的新語言,他使用了他的一位同事的生肖石-紅寶石。後來,Matz意識到Ruby這個名字十分恰當,首先,在生肖石中,Pearl代表六月,而Ruby代表七月。在字型大小上,Pearl大小是5pt, ruby的大小是5.5pt。所以Ruby這個名字對於一種Perl的後續語言十分合適。

更多精品課程點選:阿里雲大學