首先看一段 Ruby 代码
#定义
module A
def self.a
puts 'a'
end
end
#使用
A.a
上面可以看到定义了一个 A 模块,然后在被使用时是通过 A 模块来调用 a 这个类方法。 但是我认为模块的从根本上是为了解决代码复用问题而存在,模块封装了一组被公用的常量/方法/变量,供其他模块/类进行引入。 在上面的代码中出现了两个不规范的地方 1.模块中不应该定义类方法,因为模块中的类方法永远无法被 include 成为目标类的类方法,这违反了模块设计的初衷。 2.如果希望某个方法以类方法的形式被调用到,使用 class 进行封装。 请大家给出意见。谢谢。么么哒。 -------update------- 原贴内容有点误人子弟了。 我原本以为 module 从设计上是为了