kelkronsoの日記

 | 

2008-06-11

知って得した便利文法

10:00 | 知って得した便利文法 - kelkronsoの日記 を含むブックマーク はてなブックマーク - 知って得した便利文法 - kelkronsoの日記

知って得した便利文法 on Ruby - kelkronsoの日記

他にもこんなのあるよ!というのがあればコメントでよろしくお願いします!


自己代入

a ||= 1         # a が偽か未定義ならば1を代入。

↓こんな感じで

#インスタンス変数modelを取得する、modelがnilの場合はインスタンス化したものを返す
def model
  @model ||= Model.new
end

多重代入

a, b, c = 1, 2, 3 #a=1, b=2, c=3

あまり横に長くなるようなら素直に縦に書いたほうがいいかもしれませんね。


setter

def method_name=(arg)
  @arg = arg
end

こんな感じで使える!

object.method_name = 'test'

C#のプロパティみたいな感じですね。


"!"を極力使わない

if式のthenは省略する。また、if !xのような場合は、 unless xに置き換える。ただし、unlessの場合、 elseは使用しない。また、条件が十分に簡単で、一行で書ける場合は、if/while修飾子を使用してもよい。

Rubyコーディング規約

ばりばり使ってたら怒られました・・・。

 | 
BlogPet