2013-10-23 43 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都使用這種技術。

相關問題