タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

codingとdesignに関するmoronbeeのブックマーク (1)

  • コードの重複を排除するのもほどほどに!

    コードの重複を排除する、ということは良いコードを書くための指針として昔から言われている。全く同じ構造のコードを1000行にわたって繰り返すことがばかげていることは誰にだってわかる。ruby はそのようなコードの重複を排除することに優れた言語だと思う。メタプログラミングを工夫することでかなり重複を排除することができる。 例えば def opened? self.state == "opened" end def closed? self.state == "closed" end def waiting? self.state == "waiting" end のようなコードもメタプログラミングを使えば %w(opened closed waiting).each do |name| define_method "#{name}?" do self.state.to_s == name en

    moronbee
    moronbee 2013/07/30
    "わかりやすい名前をつけることができるメソッドの切り出し方にしよう、というのが本来あるべき姿のはずだ"
  • 1