关于领域对象

来源:2-8 Angular Material 主题

505380967

2018-07-27

在实际开发中,领域对象和后端数据库中的表是一一对应的吗?像一些后台管理的项目中,可以不用领域对象吗?用了领域对象的好处有哪些?求老师指教

写回答

2回答

505380967

提问者

2018-07-28

因为获取到的后端数据可能会包含例如创建时间,修改时间等字段,会有一些前端不需要用到的字段。而领域对象用在服务中,来规定http请求返回的数据类型,如果领域对象和后端返回的数据不一样,不会出现问题吗?

0
3
接灰的电子产品
回复
505380967
可以没有关系,前端的建模和后端关注的点是不一样的,但一般来说是有很多重叠的。我举个例子,比如我们有这么一个用户对象,它的属性有用户名、姓名、手机号以及头像。但这个头像呢是采用了另一个第三方的服务提供的,那么从后端角度它可以有这个头像属性,也可能由于某种因素,后端不打算处理这个属性。而从前端来看,如果要求有用户头像的显示的话,那么这个属性就是用户对象的一部分。但从获取数据角度看,前端需要先从自己的后台获取用户的用户名、姓名、手机号,然后再从第三方服务获得头像。这种情况下,前端的领域对象就不是后端的领域对象也不是它的子集。有没有联系呢,有一部分联系。但终究要去根据具体的业务来设计领域对象。而不是这样凭空去问,没意义。 第二点,不使用领域对象,我没法想象该如何构建系统,比如如果我们要新增一个数据,你不传递对象,而是传递十几个值吗?这样的系统维护起来是怎样一个噩梦啊
2018-07-29
共3条回复

接灰的电子产品

2018-07-28

怎么说呢,领域对象就是我们怎么理解业务抽象而来啊,如果不用领域对象,就说明你对业务没有一个面向对象的抽象理解。至于领域对象和后端数据库是否一一对应,这个倒是不一定,前端是前端,后端是后端,有的时候如果大家抽象的模型一致那么有可能是一样的,但很多时候后端和前端考虑的因素并不一致。

0
0

Angular打造企业级协作平台,让你在Angular领域中出类拔萃

全网首个介绍官方 Material 组件库用法与 Redux 在 Angular 中的应用

998 学习 · 536 问题

查看课程