0

我正在使用 base62 gem 来混淆/缩短 id。所以我有这样的事情:

552.base62_encode
=> "8u"
"8u".base62_decode
=> 552

我想在初始化程序中给它们起别名,这样它们就更干净了,就像这样:

class Fixnum
  def encode
    base62_encode
  end
end

class String
  def decode
    base62_decode
  end
end

直接使用这些词有什么问题encode吗?decode这是否会导致任何相互依赖、其他 gem 等问题,或者这样做是否安全?

4

1 回答 1

3

好吧,既然String#encode方法是ruby定义的,是的,会出问题的。

作为一般说明,您应该尽可能快地避开猴子修补程序。
它只会使新开发人员更难理解您的应用程序,并且更难维护。

于 2013-10-16T16:13:40.833 回答