Ruby on Rails 始めました

Javaやphpはそこそこ書ける程度の人が、Ruby on Railsを一から習得する過程を記したサイト

Rubyの基本文法

Rubyのメソッド(関数)についてまとめてみた

returnは要らない

 Rubyでは全てのメソッドは戻り値を返す。というか戻り値を返さないメソッドは定義できない。
 わざわざreturnせずとも、メソッドの定義式の最後の値が自動的に戻り値として返されるから。

 Javaではvoidなやつが結構多いので「関数」という呼び方はしっくりこないが、Rubyのメソッドは全部値を返すので「関数」という呼び方がしっくりくる。
 しかし個人的には「メソッド」という呼び方が慣れているので、基本的には「メソッド」でいくので悪しからず。

( )は省略可能

 Rubyではメソッドを呼ぶ時、( )を省略することができる。

 メソッドを定義する時も省略可能。

引数のdefault値を設定できる

 引数のdefault値を設定しておくことができ、メソッドを呼ぶ際に引数を入れなかった場合、そのdefault値が引数として使われる。

 省略できるのは後ろの引数のみ。前の引数を省略して後ろにだけ引数を渡すことはできない。

引数にブロックを受け取ることが出来る

 ブロックというのはdo~end(もしくは{ ~ })で囲った処理の塊。
 例えばこういうの↓

このブロックを丸ごと引数として関数に渡すことができる。

 例えばこんな感じ↓

 配列[1, 2, 3]をレシーバとしたeachメソッドの引数にdo~endを渡している。この場合の出力結果はただ単に配列の要素の数だけ渡したブロックの処理を繰り返すだけ↓

 配列の要素を受け取りながら処理する場合は、以下のようにブロックの中で| |を使う。

 この辺りはちょっと話がややこしいので、詳しくはRubyのブロック、ブロック引数、Proc、yieldが分かったを参照。

キーワード引数とオプション引数

 キーワード引数とオプション引数については別記事にてまとめたので参照されたし。

参考キーワード引数とオプション引数についてまとめてみた

コメントを残す




関連記事

Pick Up