在Ruby中实现子类中的方法

时间:2013-07-05 12:04:13

标签: ruby

什么是“更好”的是Ruby

class BaseClass
    def items
      @items ||= get_items
    end

    def get_items
      raise NotImplementedError
    end
end

class ClildClass < BaseClass
  def get_items
    # ... fetching items...
  end
end

或只是

class BaseClass
    def items
      @items ||= get_items
    end
end

class ClildClass < BaseClass
  def get_items
    # ... fetching items...
  end
end

1 个答案:

答案 0 :(得分:2)

这取决于你。对此没有正确的答案。你只会得到2个不同的错误。如果其他人将实现其他ChildClasses,那么第一个coince应该会更好,因为他们可以看到他们需要在他们的BaseClass上实现的“接口”。