將它應用到原始對象內加載另一個對象,像這樣的好做法:對象應該自己「加載」另一個對象,還是讓另一個對象傳遞給它?
Class parent() {
$child;
function loadChild() {
$child = new Child();
$this->child = $child;
}
}
,或者應子對象總是在分別通過?
Class parent() {
$child;
function setChild(child $child) {
$this->child = $child;
}
}
$parent = new Parent();
$child = new Child();
$parent->setChild($child);
哪一個更好的選擇,更靈活等?
儘管它只是一個例子:它應該是'private%child'而不是'$ child;'。 – ThiefMaster
@stereofrog,它實際上是一個普遍的問題 - 我想知道我的棲息地是否糟糕:)我最終希望設置兩種類型之間的雙向性。 – johnnietheblack
我認爲@ J0HN是正確的 - 如果你練習測試驅動開發,你會很快注意到把'new'放入你的協作者幾乎是不可能的,因爲你不能輕易地模擬和存儲它們。代碼重用也受到嚴重阻礙。不要這樣做。看看[清潔代碼會談](http://www.youtube.com/results?search_query=The+Clean+Code+Talks&aq=f) – Gordon