2013-02-27 77 views
0

在Ruby中,我想把一些助手放在一個額外的模塊和文件中。我將用它在模型級,所以我把將模塊包含在類中(Ruby Mixins):有什麼更好的?

include MyHelper 
class Shop 
    ... 
end 

我現在意識到這也可以像這樣做:

class Shop 
    include MyHelper 
    ... 
end 

任何人都可以解釋我更多的區別是什麼?第二個版本總是更好的選擇?

回答

1

區別在於,在第一種情況下,您將助手包含在全局名稱空間中。我想不出一個好主意的例子。

在後一種情況下,您需要在類的「名稱空間」中包含助手。模塊中定義的(實例)方法現在可用於Shop類的實例。