我已经实现了一个允许以不同方式初始化自身的类。
第一种方式:创建对象,稍后设置属性。
object = MyClass.new
object.name = 'Object'
第二种方式:将属性哈希传递给对象构造函数。
MyClass.new(:name => 'Object')
第三种方式:将块传递给对象构造函数。
MyClass.new do |object|
object.name = 'Object'
end
我一直认为它是如此微不足道,以至于有人可能已经将它实现为一个单独的 gem,或者可能有一些内置的 Ruby 解决方案?