以下代码工作正常:
class Float
def round
self.format.to_f
end
def format
"%.2f" % self
end
end
然而,对 Float 这样的类进行monkeypatch 似乎是一种不好的做法,因为其他人正在做同样的事情并且会导致问题。
然后我安装了 simplecov 并且问题开始了: simplecov monkeypatches 相同的方法。
所以我创建了一个模块并将其混合到 Float 中。
module MyModule
def round
self.format.to_f
end
def format
"%.2f" % self
end
end
我想这也有效。但问题是 simplecov 似乎覆盖了上面的混合方法。
那么,扩展内置类以使其不与其他人的代码冲突的正确方法是什么?
红宝石 1.9.3