Sooey

2014-05-07 11:38:49 +0900

ネストしたModule/ClassをRubyで定義する時のコーディングスタイルの話。

Rubocop 0.19.0でClassAndModuleChildrenというルールが導入されて、ネストしたModule/Classを定義する際のスタイルとして、

# Style A
module  Foo
  module Bar
  end
end

# Style B
module Foo::Bar
end

のうち、Style Aのほうを推奨するようになりました。

Style Aのほうが推奨される理由は、

にあるように、親のModule/Classが未定義になるケースを回避できるという点のようです。