【发布时间】:2009-11-09 17:05:58
【问题描述】:
我很难做出这个设计决定。
我可以使用传统的new语言构造来初始化对象,并通过变量来使用它们,例如:
$o = new Object('arg');
$o->method();
$o->property = 'value';
$o->save();
或者我可以选择工厂模式和积极的可链接性,比如 as
Object::new('arg')->method()->setProperty('value')->save();
这会导致
- 更少的 LOC 到
- 阅读,
- 维护,
- 重构,
- 无需命名变量。
但是,我不确定这是否是一种可接受的方法,以及我是否忘记考虑某些因素。
请表达您的担忧或同意,并指导我如何做出决定。
【问题讨论】:
-
作为记录,虽然我假设您正在寻找与语言无关的答案,但某些语言的风格会暗示一种或另一种选择。我猜这是 Perl 还是 PHP?
-
是的,我希望会有特定于 PHP 的答案,但与语言无关的建议也会很有帮助。