问题标签 [ecb-pattern]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
204015 浏览

uml - 在 UML 类图中,边界类、控制类和实体类是什么?

我现在使用 NetBeans 作为我的首选 IDE,它有一个用于 UML 建模的插件。在类图中,有称为Boundary ClassControl Class和的模型元素Entity Class。但是,我找不到它们的良好定义,但我确实在 UML Class Diagrams 上找到了这个站点。

0 投票
2 回答
20434 浏览

java - Java EE 6 设计模式

我想知道可以在 Java EE 6 实现中应用的设计模式。

  • MVC。
  • 戈夫。
  • 持久关系映射
  • 汇集
  • 中电联
  • 实体控制边界 (ECB)
  • 和许多其他人

JPA 是否消除了对 DAO 的使用?
请提供其他可以学习的模式。

0 投票
1 回答
2244 浏览

java - EJB vs CDI 和“实体边界控制”模式

我试图了解 CDI 和 EJB 以及实体边界控制 (ECB) 模式。我对ECB模式的理解是Boundary是事务边界的开始和结束。此外,CDI 不像 EJB 那样提供事务支持。

因此,如果我想成功实现 ECB 模式,那么以下是正确的;

  1. 我可以用 EJB(即@stateless、@stateful、@singleton)实现边界部分,用 CDI 或 EJB 实现控制层。
  2. 我可以使用 CDI 实现边界和控制部分,但在边界中实现事务支持,类似于 (http://smokeandice.blogspot.com/2009/12/cdi-and-declarative-transactions.html)
  3. 我无法使用 CDI 实现边界,然后在控制层中开始使用 EJB。

谢谢

0 投票
1 回答
5508 浏览

java - 欧洲央行模式 - 什么是真正的边界?

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

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,表示将在内部系统和交付机制之间共享的简单数据结构;并包含来自用户的输入和来自内部系统中的控制器的输出?

0 投票
1 回答
276 浏览

uml - 边界控制实体图名称

如您所知,我们可以在分析模型中显示边界、控制和实体类;但我不确定这个图表的名称是什么?我在某处看到它是“用例模型”,另一个称为“对象模型”,......如果有人知道这个图的确切名称,我会很感激帮助我。

请帮忙,这里是这个图的一个例子: http ://www.google.com/imgres?imgurl=http://www.cs.sjsu.edu/~pearce/modules/patterns/enterprise/ecb/ecb_files/ image009.jpg&imgrefurl=http://www.cs.sjsu.edu/~pearce/modules/patterns/enterprise/ecb/ecb.htm&h=358&w=661&sz=19&tbnid=bvYxTYO5FR_IHM:&tbnh=68&tbnw=125&prev=/search%3Fq% 3Dboundary%2Bcontrol%2Bentity%2Bdiagram%26tbm%3Disch%26tbo%3Du&zoom=1&q=boundary+control+entity+diagram&usg=__Gd14acpS1PyJ7bUNao2n6N2yvac=&docid=bU8mEKpEBB3kBM&sa=X&ei=RfeiUfqMMsPQveddurCC=gbAM&swAQ=2

0 投票
1 回答
8118 浏览

java - (实体-控制-边界模式)-> 如何处理两个实体?

前提

我最近阅读/观看了 Java Champion Adam Bien 的很多文章/视频,他在其中提倡使用古老更新的 实体 - 控制 - 边界设计模式JAVA EE >= 6。

利用 CDI、EJB 3.1、JPA 2 和其他 JAVA EE 6 特性,这种模式应该有助于创建更多面向业务的组件,更容易进行单元测试,并基于职责实现更高的关注点分离。

由于我使用了上面列出的所有功能,而且这种模式听起来很有趣,所以我正在寻找它,看看 ECB 是否能满足我的下一个项目要求。


到目前为止我所拥有的

在 ECB 中,每个逻辑实体都分为三部分(如果我错了,请纠正我):

  • 边界,一种强大的外观,唯一可以从外部访问的类。对于外部(如果我没记错的话),我们的意思是在应用程序之外,例如。远程客户端,并且在组件包之外,例如。我申请的另一部分;

  • a(n optional) Controller,负责某种操作(例如,实体的验证);

  • 一个Entity,可以是纯 JPA Entity,但也可以在里面包含一些装饰/验证/(最小)业务逻辑。

例如,考虑有两个不同的实体(OrangeApple),一个对它们执行 CRUD 的类(FruitsManager)和一个对它们执行一些控制的类(FruitsQualityChecker)。

直到昨天,它本来就像(方式):

而在欧洲央行,我会(方式):

然后我可以单独地对每个实体进行 CRUD 和研究,例如。和


主要问题

我应该如何处理跨组件研究,例如 findFruitsByPrice(min,max)

我应该同时调用findOrangesByPricefindApplesByPrice和求和结果吗?来自哪个类,封装在哪里?如果我有一个包含许多条件的搜索页面,它必须跨越 50 个实体怎么办?运行每个实体的搜索方法 50 次,然后执行插值,听起来是一种非常丑陋的方式,对性能影响巨大。我想我仍然需要一个中心点来执行这种事情。是否应该是另一个组件,称为 eg Searches,在其边界中调用其他边界?这一点对我来说是模糊的 ATM。


附带问题

将欧洲央行与基于行动的框架一起使用是否有意义?还是这种模式归入基于组件的框架?

我正在使用 Struts2,这是一个基于 MVC 动作的框架,我对 JSF2(JAVA EE 6 标准,并在大多数 Adam Bien 的展示中使用)非常陌生,它是一个基于 MVC 组件的框架;

除了考虑架构“组件方式”的额外努力之外,是否有什么东西阻止我在业务层使用 ECB?

由于 Adam Bien 示例中的大部分边界是 REST 服务(通常更多的是替代 Struts2 Actions 而不是“链中的新设备”),这让我怀疑它是否完全适合 Struts2 生态系统。

说你的。请。

0 投票
3 回答
4449 浏览

model-view-controller - 实体控制边界(ECB)与模型视图控制器(MVC)

我不确定我是否得到了正确的概念。

人们告诉我

边界=视图

实体 = 模型

控制 = 控制器

但是基于我对 MVC 的了解。(胖模型,瘦控制器)

不是 Boundary = Controller, Control = Model(业务逻辑)和 Entity = Model(仅做 crud 的 orm 类或类似的实体类)。

我可能错了,请指导我!

0 投票
1 回答
892 浏览

uml - UML 类图

我有一个使用边界、控制、实体模式的设计类图:

在此处输入图像描述

是否允许以下​​链接:

  • 边界到边界?
  • 控制来控制?
0 投票
3 回答
2492 浏览

uml - 控制类有什么用?

我试图了解如何将类分类为边界/控制/实体类。我可以理解边界和实体类,尽管我的理解可能并不完美。边界是与用户交互的类。所以用于用户界面的类将是边界类。实体类处理数据。所以我在 ER 图中使用的实体将是实体类。但我不明白为什么要使用控制对象。据说控制对象是用来封装领域功能的。如果不使用控制类怎么办。你能用例子解释一下吗?我找到了一些解释,但我还是很困惑。为什么边界不应该直接与实体交互?还有一些不是边界/控制/实体的类。这些是什么?

0 投票
2 回答
204 浏览

uml - 存储层和实体类

根据我正在阅读的书,在三层架构(表示,应用程序,存储)中,存储层负责照顾系统中数据的持久存储。如果是这样,我认为实体类在应用层。对吗?存储层中有哪些类?实体类和存储层的类有什么区别?你能给我一些例子吗?