1、學(xué)習(xí)使我快樂
早就聽說Ruby這個語言的表達(dá)能力是一般的語言不能比的,現(xiàn)在終于有機(jī)會見識見識啦,雖然一開始是拒絕的,但古人不常說嘛,學(xué)如逆水行舟,不進(jìn)則退~何況語言都是相通的,那就開始吧

對,人丑就改多讀書
2、基本用法(與之前學(xué)過的比較)
- 定義類
在 Ruby 中,類總是以關(guān)鍵字 class 開始,后跟類的名稱。類名的首字母應(yīng)該大寫,例如
class Customer
- 創(chuàng)建對象
下面的實例創(chuàng)建了類 Customer 的兩個對象 cust1 和 cust2:
cust1 = Customer. new
cust2 = Customer. new - 創(chuàng)建數(shù)組
names = Array.new
- 設(shè)置全局變量
全局變量以 $ 開頭。未初始化的全局變量的值為nil(相當(dāng)于Js中的null),例如
$global_variable = 10
- 判斷
Ruby使用elsif,不是使用else if - 循環(huán)
for…in語句:
for val in Array [do]
#code
End
- 定義方法
方法名應(yīng)以小寫字母開頭。如果您以大寫字母作為方法名的開頭,Ruby 可能會把它當(dāng)作常量,從而導(dǎo)致不正確地解析調(diào)用。
def method_name
expr..
end
- 可以使用
#{ expr }替換任意 Ruby 表達(dá)式的值為一個字符串
3、安裝RubyMine
- 點擊這里下載并安裝
RubyMine,一個高效方便的rubyIDEA哦! - 下載好安裝包后,進(jìn)入到解壓目錄下的
bin目錄執(zhí)行
$ ./rubymine.sh
- 在桌面點擊
Lock form Launcher即可
4、Hello World
- 新建一個文件
hello_world,寫如以下內(nèi)容
puts("Hello World")
- 進(jìn)入該文件目錄,執(zhí)行
$ ruby hello_world
- 輸出
Hello World即成功
hello_world
5、完成一個需求

需求
- 描述
編寫一個輸出數(shù)字從1到n的字符串表示形式的程序。對于三的倍數(shù),應(yīng)該輸出“Fizz”五的倍數(shù)輸出“Buzz”,既是5的倍數(shù)又是三的倍數(shù)的輸出“FIzzBuzz” - 思路
- 思路—新建數(shù)組—>判斷語句—>輸出字符串
- 寫單元測試
-
實現(xiàn)
實現(xiàn)的代碼 - 單元測試
Ruby中也提供了單元測試的框架,Ruby內(nèi)置的庫里面沒有包含TestSuite,需要額外安裝一個第三方的gem(test-unit)
$ sudo gem install test-unit
在項目中可以新建一個test-unit就會生成測試代碼模板,

測試
比如
assert true
這行代碼叫做“斷言”(assertion)。斷言只有一行代碼,把指定對象或表達(dá)式和期望的結(jié)果進(jìn)行對比。例如,斷言可以檢查:
兩個值是夠相等;
對象是否為nil;
這行代碼是否拋出異常;
每個測試中都有一個到多個斷言。只有所有斷言都返回真值,測試才能通過。
-
測試代碼
測試代碼 運行測試代碼,執(zhí)行以下命令
$ ruby FizzBuzz.rb

成功嘍
具體實現(xiàn)代碼見我的Github
6、學(xué)習(xí)資料
- 書籍《Ruby基礎(chǔ)教程》:https://book.douban.com/subject/25958845/
- 在線學(xué)習(xí)ruby:http://tryruby.org/
- Ruby學(xué)習(xí)資源匯總:http://iwanttolearnruby.com/
- ruby中文學(xué)習(xí)社區(qū):https://ruby-china.org/
- ruby練習(xí)題:http://rubyquiz.com/
- Ruby在線學(xué)習(xí)教程:https://www.codecademy.com/zh/learn/ruby


