[英]“The Ruby way” (mixins and class reopening) vs. dependency injection
[英]Including module in file vs. in class (Ruby Mixins): What is better?
在Ruby中,我想在一些额外的模块和文件中添加一些帮助程序。 我将在模型级别使用它,所以我把
include MyHelper
class Shop
...
end
我现在意识到这也可以像这样完成:
class Shop
include MyHelper
...
end
谁能为我解释更多有关差异的信息? 第二版本始终是更好的选择吗?
区别在于,在第一种情况下,您将帮助程序包括在全局名称空间中。 我想不出一个好主意的案例。
在后一种情况下,您可以在类的“名称空间”中包含帮助程序。 现在,模块中定义的(实例)方法可用于Shop
类的实例。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.