我的问题更像是一个理论。对象责任 - 列表和项目
假设你有一个对象,它表示的事情列表(文章,页面,帐户等)
class ObjCollection
你有一个类,它代表收集的特定项目:
class objItem
我有一个思考每个对象的基本职责的问题。
哪个班级负责创建新的objItem
?
哪一类负责删除objItem
?它应该删除自己作为一种方法?
更新1: Techpriester:它是确定使用对象的构造函数的函数来创建新的项目? 我认为像的:
class objItem {
public function __construct($id = 0) {
if ($id > 0) {
// load item data...
} else {
// make new item...
}
}
}
但是,如果有什么东西在代码中出现问题,而是,它传递0传递一个的$ id> 0的?在这种情况下,更多预期的行为将是空的对象,而不是新的对象,或者我错了吗?
+1与鸟类相比,它使这个事情更清晰。 – 2010-04-04 19:58:47