與Ruby的第一天

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í)資料

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容