【问题标题】:Entity Control Boundary (ECB) vs Model View Controller (MVC) [duplicate]实体控制边界(ECB)与模型视图控制器(MVC)[重复]
【发布时间】:2015-10-02 17:09:06
【问题描述】:
我不确定我是否得到了正确的概念。
有人告诉我
边界 = 视图
实体 = 模型
控制 = 控制器
但是基于我对 MVC 的了解。 (胖模型,瘦控制器)
难道不是 Boundary = Controller、Control = Model(业务逻辑)和 Entity = Model(只做 crud 的 orm 类或类似的实体类)。
我可能错了,请指导我!
【问题讨论】:
标签:
model-view-controller
uml
use-case
ecb-pattern
【解决方案3】:
你的解释是正确的。但它们并不相似。 MVC 用于用户交互。业务规则不直接绑定到用户,甚至不绑定到互联网本身这样的 I/O 设备。 ECB 模式用于将业务实体与边界(mvc 框架、ORM)分离。实体是业务对象,它们对数据库、orm 一无所知。控件不是 MVC 中的控制器,它可以是表示用例的命令。只有控制方可以访问业务实体。业务实体是他们自己的世界,与 MVC 层完全隔离。它可以是一个具有自己的模式、原则、类型和分离层的业务框架,它不希望与任何与 I/O 相关的东西进行交互。
我们可以像这样将 MVC 与 ECB 结合起来:
User <-> Controller [Boundary] <-> Control (use case) [Control] <-> Business entities [Entity] <-> Other business entities [Entity]