我有一个问题要问你。
在 BCED 方法中,有 4 个包(边界、控制、实体、数据库),其中有许多具有一定责任的类。谁负责安装和销毁实体包中的对象?控件的对象还是实体的对象?
我会更好地解释。
例如,我们有 1 个控制器类和 2 个实体类,通过关联相互链接。假设我们必须在实体中使用 2 个独立类的 2 个对象。因此,控制器类像这样构建实体的两个对象:
//In the controller:
create_objects(){
Entity1 e1=new Entity1;
Entity2 e2=new Entity2;
}
或者控制器只列出第一个类对象,进而实例化第二个类对象(我记得你实体类是链接的!!
//In the controller:
create_objects(){
Entity1 e1=new Entity1;
}
//In the Entity1:
create_object_2(){
Entity2 e2=new Entity2;
}
提前谢谢你,对不起英语! :)
BCED 是模型-视图-控制器模式的体系结构视图。
最后有一个原则:在模型/实体或视图/边界层中,组件彼此独立。所有相互依赖都在控制器层中。因此,经典行为是第一个 - 当您从控制器创建两个实体类时。
但类不是组件。在这个抽象层面上,规则远非如此严格。对于类,不要将其作为规则,而是将其视为一个不错的目标:尝试保持实体类彼此更加独立。
但是,如果你有一个 Entity1,它是 Entity2 类与其他东西的组合,那么第二个变体是唯一明智的变体。