about 9 years ago

學習教材:

Ruby使用手冊

Ruby語言入門

20分鐘Ruby體驗

Code School的Try Ruby

笨方法學Ruby

維基教科書(Ruby)


使用互動式Ruby環境(IRB, Interactive Ruby)來體驗Ruby程式:

如果使用 Mac OS X, 請打開 Terminal, 然後輸入 $ irb 按 Enter
如果使用 Linux, 請打開 Shell, 然後輸入 $ irb 按 Enter
如果使用 Windows, 請從選單中打開Ruby的『fxri』

Hello World!

> puts "Hello World!" 
Hellow World!
=> nil

puts 是 Ruby 輸出的指令, 輸入 Puts "Hello World!"
即可輸出字串: Hello World!
後面的 => nil 則是代表nothing, 以這段程式碼來說,代表程式運作已結束

字串(String)
由於Ruby是全物件導向的程式語言,為了避免當作文字的字串跟其他物件或語言搞混
會在字串前後加上 『" "』或是『' '』來告訴Ruby內容是字串,二者的差別是
『" "』 => 可以加入跳脫字元(Escape, 詳見)跟插入#{} 來加入Ruby程式
『' '』 => 僅能使用跳脫字元: \'(單引號)跟\(單斜線), 其餘裡面打什麼,就完整輸出什麼出來


使用數字跟 + - * / 來做計算

> 5 + 7
 => 12 
 
> 6 - 2
 => 4 
 
> 8 * 9
 => 72 
 
> 9 / 3
 => 3 
使用次方
> 2**4
=> 16

等同於

開根號
> Math.sqrt(25)
=> 5

等同於

Math 是Ruby內建的數學模組(Modules)

Math.sqrt(25) 
Math = 呼叫 Math這個模組 
.sqrt() = 使用.sqrt這個『開根號(Square Root)』的功能
25 = 輸入25這個數字當作參數去運作

由於數字有分成整數(Integer)跟浮點數(Float)
一般開根號都會有小數點, 所以Math.sqrt()出來的值都會成為浮點數


定義(Define)一個方法(Method)

我們可以設定一個方法(Method 或稱函式)來簡化程式指令
以一開始的Hello World!來說,可以簡化成只要輸入 h 就能完成

> def h
>   puts "Hello World!"
> end
=> nil

之後只要輸入 h

> h
Hello World!
=> nil

加入一個參數,讓你可以對任何人打招呼

> def h(name)
>   puts "Hello #{name}!"
> end
=> nill

然後試著輸入 h("Jack")

> h("Jack")
Hello Jack!
=> nil

#{} 是Ruby在字串裡面加入參數的指令,
{}裡的程式執行完以後會變成一段字串,並加進整段字串裡面去,
然後刪除#{}符號

以此例來說,一個沒加入任何參數的『方法』的應該是 h()
Ruby很聰明地讓我們可以省略 直接輸入h即可
參數可以輸入數字, 但是要放文字(這裡叫做字串(String)),請記得前後要加上" "
告訴Ruby說這個內容是字串喲!
所以 > h("Jack") 可以簡寫成 > h "Jack"


設定預設招呼語,並把字串的第一個字變成大寫

> def h(name = "World")
>   puts "Hello #{name.capitalize}!"
> end
=> nil

我們可以測試了, 輸入各自 h, h "wang", h "wANG"看看

> h
Hello World!
=> nil 

> h "wang"
Hello Wang!
=> nil 

> h "wANG"
Hello Wang!
 => nil 

一旦沒有輸入參數,就會變成預設的 Hello World!
設定參數以後,會把第一個字變大寫

.capitalize 是字串的函數之一,把字串的第一個字母變大寫,其餘變小寫
延伸閱讀: Ruby 常用的字串函數

← [閱讀心得] 台灣軟體產業的失落十年 [Learn Ruby] 2. 做一個Greeter(接待員)程式 →
 
comments powered by Disqus