Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在编写 Ruby 库时,什么时候可以在一个文件中执行此操作?
module MyLib # some definitions end include MyLib
我发现通常,一个人必须
require 'some_gem'
首先,然后
include SomeGem
但是我想知道,在一些更简单的情况下,当您只想为核心添加一点功能时,是否可以默认包含主模块?
require 'some_gem' / include SomeGem 组合主要在脚本中找到(与库相反)。在库中,将命名空间分开是很重要的——这是首先拥有命名空间的全部意义所在。
是的,这是一种不好的做法。如果你包含它,那么你就是在选择人们如何使用它。您正在为他们做出决定,他们希望将其包含在全局命名空间中。这不是你要做的决定,做一个优秀的 Ruby 公民,不要改变你的用户环境。允许他们选择他们想要如何使用代码。