5

我刚刚看了鲍勃叔叔关于建筑软件的演讲:

http://www.cleancoders.com/codecast/clean-code-episode-7/show

他谈到了 ECB 模式(实体 - 控制器 - 边界)

他坚持认为所有软件都必须是主要的,尽管作为一个整体的用例。

事实上,他多次重复关于工具、框架等的决定必须推迟。

我对“边界”这个词很感兴趣,所以我找到了这个解释:

http://process.osellus.com/sites/wiki/OpenUP%20DSDM/Wiki%20Pages/Guidance%20-%20Entity-Control-Boundary%20Pattern.aspx

在这里,我们看到边界与每个交付机制相关,例如 Web 机制的表单 (MarketingCampaignForm) 等......

所以我的问题是:

边界是否必须知道将使用的交付机制的类型,并且与鲍勃叔叔的观点如此矛盾?

或者它们必须是简单的 POJO,表示将在内部系统和交付机制之间共享的简单数据结构;并包含来自用户的输入和来自内部系统中的控制器的输出?

4

1 回答 1

4

可能有点牵强(纯粹主义者会讨厌我),但你可以认为边界在概念上类似于 MVC 中的视图,尽管它是一个更一般的概念:例如,如果你的系统公开了一个 REST API,这不能真正称为视图(也不是您正在实现 MVC,fwiw),但更一般地说,它是您的系统与外部世界的接口。

换句话说,边界是系统中与用例参与者交互的部分,即系统之外的人或系统。

Eclipse EPF

边界元素位于系统或子系统的外围,但在其中。对于在整个系统或某个子系统内考虑的任何场景,一些边界元素将是“前端”元素,接受来自设计区域之外的输入,而其他元素将是“后端”,管理与支持的通信系统或子系统之外的元素。

于 2012-01-24T21:02:52.133 回答