我使用对象注入而不是传递数组,将客户的地址作为对象传递给类。我的问题是关于客户的地址对象,什么是设置setter和getter的最佳方法?
我确实考虑过使用这样的东西:
perl extractor.pl
>> magic.pl:17: $data += 1;
>> magic.pl:18: my $rename = $data;
但是,我认为这可能太模糊了。我应该自己制作吸气剂吗?
public function __call() {
// search for set or get and act accordingly or throw an exception.
}
或许我可以将一些方法与__call(魔术方法)和一些声明的方法结合起来?
请您告诉我这可能是最好的方法或替代方法,以及为什么。
提前感谢您的时间,
答案 0 :(得分:1)
根据经验:偏好明确而非隐含。所以显式的setter和getter通常是首选的样式。
以这种方式看待它:getter和setter只能以原始形式交付有效载荷,但如果需要它们可以做更多:过滤,验证,修复,增强......但最重要的是:它们的存在是一个类所期望的清楚标志,并授予用户获取或设置值。而对于这些“神奇的吸气剂和安装者”而不是你在盲人中飞行。 IDE也是如此:现在他们的自动完成功能可以与他们一起使用。所以保持风格和明确。其他人会感谢你: - )