之前已經提出過類似這樣的問題,但是我特別提出了使用組合作爲使用模塊mixin的替代方法。什麼時候使用ruby模塊vs使用類組合?
class Helper
def do_somthing
end
end
如果我需要'使用'一個類但不繼承它,我會簡單地撰寫它並使用它。
class MyStuff
def initialize
helper = Helper.new
helper.do_something
end
end
我爲什麼想創建一個模塊是:
module Helper
def do_something
end
end
class MyStuff
include Helper
end
我看到的唯一的區別是不會有很多Helper
對象躺在身邊,如果我使用的模塊。但是我沒有看到有更多物體躺在較小的物體上。
此外,我不知道我是否需要在未來繼承它。那麼,如何決定我的庫的用戶是否想要使用模塊mixin,或者想要使用組合?
'require'不是你在這裏需要的。你需要'include'。 – Linuxios
thnx。修正 – codeObserver
當然。樂意效勞。 – Linuxios