2013-10-23 41 views
1

我们公司正在讨论围绕构造函数构建一个Wrapper还是直接使用构造函数更好。 那么使用这个好吗?可以为构造函数创建包装吗?

public function createUser($number, $firstname, $lastname) { 
     return new User($number, $firstname, $lastname); 
    } 

例子:

$user = $this->createUser($number, $resultList->firstname, $resultList->lastname); 

$user = new User($number, $firstname, $lastname); 
+0

是的,实际上有多种设计模式依赖于这种技术。 –

+4

'工厂模式'?你正在讨论设计模式呀 – gwillie

+1

Zend Framework 2正在使用这个:-)他们已经以我几乎喜欢它的方式实现了IoC--使用服务定位器满足的构造函数依赖注入,你可以编写一个工厂类,它们是你的*构造函数包装*(或者只是为了相同的目的使用闭包)。所以,**是的,它是好的,直到您滥用或过度使用其他东西... – shadyyx

回答

3

虽然我不知道你的例子大概是理想的,你完全可以包装在不同的功能构造。

This is a great read哪些使用包装来创建真正有用的设计模式。

注意factory模式和singleton都使用这种技术。

相关问题