哪种做法更好;通过@property
或self.property
?
答案 0 :(得分:1)
如果您只是使用直接访问器,那么请坚持@property
(除非您来自Python并且被@
sigil hehe关闭)否则:
这完全取决于你。但是self.property
在某些需要确保最初设置属性的情况下非常有用:
def property
@property ||= []
end
# don't need to check if @property is `nil` first
self.property << "hello"
另外请注意,使用self.property
而不是@property
会有轻微的开销,因为self.property
是方法调用。
注意:我使用self.property
仅仅property
的原因是因为相应的setter方法property=
需要一个明确的接收者:{{1}所以我选择使用显式接收器。