问题标签 [domain-model]

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 投票
1 回答
328 浏览

php - 在 PHP 会话中存储域模型

在 PHP 会话中存储域模型的对象是一个好习惯吗?

这将能够避免查询和重构每个 PHP 对象到每个 PHP 请求。

有尺寸限制吗?

0 投票
3 回答
6582 浏览

c# - 最佳实践:使用 AutoMapper 或 LINQ(LINQ to Objects)在域模型和表示模型之间进行映射的优缺点

你怎么看?您如何在域和表示模型之间进行映射?

0 投票
2 回答
241 浏览

php - 在富域模型中放置逻辑的位置

我有一个模型“新闻项目”,其中包含文本、图像等,以在网站的多个页面上显示为最新消息。这个“新闻项目”也可以发布到 Twitter 或 Facebook。在新闻项目模型中实现方法 post 并将不同的 post 实现作为策略注入是否干净?还是为此提供单独的应用程序服务更好?

谢谢

0 投票
2 回答
135 浏览

.net - 为每个域对象创建一个接口是个好主意吗?

我只是在查看使用nHibernate的现有项目的源代码,发现为每个实体类创建了接口。例如,客户类的ICustomer 。我只是想知道这种模式的优势是什么,因为ICustomer主要包含属性和很少的方法。

0 投票
2 回答
375 浏览

nhibernate - NHibernate:完全覆盖基域实体

我有一种情况,我有一个Common.Domain.Personand Specific.Domain.Person

第一个应该作为通用包的一部分提供。
当必须定制通用包以适应特定项目的需求时,会出现第二个。

在对象模型中,可以很容易地通过继承来实现。
然而,在 NH 映射中,我遇到了一个小问题。

我可以创建 NHibernate<subclass>映射,但这需要我使用鉴别器。但是,我知道如果继承了特定的人员类,那么在该特定项目中将永远不会使用公共类实例。

在不向基类添加鉴别器列的情况下实现这一点的最佳方法是什么(因为没有不同的情况可以区分)?

0 投票
3 回答
1171 浏览

oop - 领域模型中的专业化层次结构

我正在尝试制作管理系统的域模型。我在这个系统中有以下类型的人:

我决定定义一个, Userfrom whereEmployee和will special from。现在,我不知道我应该选择什么样的专业等级。我无法在以下方式之间做出决定:ManagerTop Manager

替代文字

或者

替代文字

哪个可能更可取,为什么?

作为一名长期的编码员,每次我尝试做一个领域模型时,我都必须反对尝试思考我将如何编码的想法。据我了解,我不应该在域模型中考虑这些问题,而应该只在对象关系中考虑。我不必在这里考虑代码重复或任何此类细节,因此我无法真正选择任何选项。

谢谢

编辑:

我会更明确一点:这是一个管理工人假期计划的程序。使用此程序,员工可以选择一年中的休假天数。然后经理可能会批准或不批准每个员工的这些日子,并且在一天结束时,最高经理应该批准或不批准经理的决定。这是我的程序的所有用户都应该能够做到的。没有其他任务。

0 投票
2 回答
3506 浏览

c# - 我应该把演员放在领域模型/类图中吗?

在设计域模型和类图时,我在理解要放入其中的内容时遇到了一些麻烦。

我将举例说明我的意思:

我正在做一个假期调度程序,它有一个AdministratorEnd-Users。他们Administrator做了一些事情,比如End-Users在程序中注册、更改他们的特权等。他们End-User可以选择他的假期等。

我最初在领域模型中将Administratorand定义End-User为概念,后来在类图中定义为类。在类图中,两个类最终都有几个方法,比如

等等

过了一段时间,我才意识到实际上两者Administrator都是End-User演员,也许我完全错误地设计了这个设计。我可以从域中定义其他类来执行它们,并让控制器处理用例,而不是用方法填充管理员和最终用户类来执行我的用例请求(实际上,我决定为每个用例)。例如,我可以有一个UserDatabase.RegisterNewUser()and UserDatabase.UnregisterUser(int id);,而不是在Administrator类上使用这些方法。

这个想法是尝试将整个假期调度程序视为一个“封闭程序”,它具有一组功能并且不打扰诸如身份验证之类的事情,应该是内部/受保护的,是唯一的公共我让外界看到的东西就是它的控制器。

这是正确的方法吗?还是我完全错了?将 Actors 放在域模型/类图中通常是个坏主意吗?对此有什么好的经验法则?

我的讲师正在关注Applying UML and Patterns,我觉得这很糟糕,所以我想知道在哪里可以查找有关所描述的演员模型情况的更多信息。

我对这一切仍然有些困惑,因为这种新方法与我以前做过的任何事情都完全不同。

0 投票
2 回答
193 浏览

c# - 在领域模型中使用集合/容器/目录

假设我想为电影院建模。电影院将有几个房间(例如,7 个),正在播放电影。

我想知道我应该如何为这种情况设计域模型。

为什么?

我很难理解为什么在某些地方我看到了第一种情况,而在其他一些地方我看到了第二种情况。

如果不是房间,我想描绘电影与:

  1. 出售门票(今天)。
  2. 门票已经售出(今天)
  3. Cinema 数据库中的客户
  4. 在电影院的给定房间内播放电影的时间。
  5. 你可以坐在电影院房间里的一组地方。

我应该使用目录,我应该将它们直接连接到Cinema目标中具有多重 * 的概念吗?

谢谢

0 投票
6 回答
1800 浏览

oop - 做领域模型时从哪里开始?

假设我已经列出了我将用来绘制我的领域模型的概念。此外,我有几个用例,我从中做了几个系统序列图。

绘制领域模型时,我不知道从哪里开始:

  1. 按照我认为的系统设计模型。也就是说,如果我要为人体建模,我首先会添加 Heart、Brain、Bowels、Stomach、Eyes、Head 等类概念。
  2. 首先设计用例需要完成的工作。也就是说,如果我有一个关于让人体吞咽东西的用例,我首先会画出 Mouth、Throat、Stomatch、Bowels 等的类概念。

我做事的顺序无关紧要?我想说可能最好尝试从用例概念进行设计,因为它们通常是您想要使用的,而不是其他类型的概念,虽然有助于很好地描述整个系统,但大部分时间可能当前项目甚至不需要。还有其他我没有考虑的方法吗?你通常如何处理这个问题?

谢谢

0 投票
1 回答
349 浏览

oop - 领域模型和合同

我正在为一家 DVD 租赁店建模:

  1. AClient将其clientNumber交给System.
  2. System只要给定clientNumber有效,就进行检查。
  3. Client给出了DVD他想租的名字。
  4. ...
  5. ...我稍后必须在Rent DVD类概念的新实例与当前的Client c.

我的领域模型类似于: 替代文字

我已经为第一次和第二次操作制定了合同:

前提条件:无

后置条件:存在一个Client c这样的c.clientNumber = clientNumber

现在,我不知道我是否应该在它Client c和 DVDStore(我打算用作前端)之间建立关联。如果我不进行关联,我以后如何能够“引用”同一个客户?我应该在客户和不同的概念之间建立联系吗?

谢谢