メソッドの作り方

複数の材料を使ってプログラミングするスキルを身につけないまま次ステップに進むのは忍びない。空手に例えるなら基本の姿勢や立ち方を知らないまま覚えたての型を演武するイメージ。キレも美しさもスピードもない。しかし進むことにします。

  • コードの繰り返しは悪
    • たとえ質問と質問の間に何かさせたいことがあって、その繰り返しを大きなループやイテレータに組み込むことができなかったとしても悪
  • そんな場合は自分でメソッドを作って書けばよいですね
  • "def〜end" (defineの略)を使って

ふるまい1

def smile
  puts 'ニヤリ'
end

実行結果, 出力なし。

moomin:programmingRuby tomomi$ ruby method.rb
moomin:programmingRuby tomomi$ 

このプログラムは ニヤリすることを命令しているのではなく、どうやってsmileするかを定義している。つまり実行することを告げているのではなく、smileをニヤリと出力するよう定義しているのである。

ふるまい2

smileがニヤリと出力するメソッドになった瞬間。

def smile
  puts 'ニヤリ'
end

smile
smile
smile
puts 'カバはヒポポトマス'
smile
smile
moomin:programmingRuby tomomi$ ruby method.rb
ニヤリ
ニヤリ
ニヤリ
カバはヒポポトマス
ニヤリ
ニヤリ

だいぶ眠い。