プログラミングスクールのフィヨルドブートキャンプの提出物のレビューでよく指摘するシリーズ。
メソッド名に同じ名詞が頻出する場合、その名詞をクラス名として抜き出すとスッキリすることが多い。特にそれらのメソッドが同じインスタンス変数を使ってる場合は尚更。
Bad:
class File
attr_accessor :permission
def open
# ...
end
def check_permission
# ...
end
def fetch_permission
# ...
end
def permission_characters
# ...
end
end
Good:
class File
def open(path)
# ...
@permission = Permission.new(file)
end
end
class Permission
def initialize(file)
@file = file
end
def check
# ...
end
def fetch
# ...
end
def characters
# ...
end
end