ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

6. 掌管对象的生命周期,工厂

2020-03-01 09:51:01  阅读:276  来源: 互联网

标签:生命周期 掌管 对象 创建 工厂 满足 抽象 公寓


自定义的公寓树

 

大雄不想做作业了,想逃离父母管教,拥有自己的公寓的时候,哆啦A梦给他一颗公寓树,满足了这个想法。公寓树可以根据自己的需要向土里延申,创建出运动房、餐厅、书房。当胖虎、静香、阿福过来了,又满足了他们的想法,创建出棒球场、钢琴室、游戏室。

这颗树洞就像我们的房间工厂,他不用去知道到底需要创建什么内容,他构造出一个一个内容,由需要的人进行装修设计,摆放自己的家具,他只要满足开放一个门,以便与房间互通规则。

应用与反思

星空里的单据也是这样的,通过动态领域模型抽象出来的实体,我不管对应的对象到底是基础资料(物料、供应商、客户、销售员),还是单据(采购订单、销售订单),还是报表,他们统一都是有MVC组成,抽象的控制器C,抽象视图V以及我们已经存在的抽象实体。

工厂就是我们不得不说的名词了,它有两点基本要求:

  1. 原子的,因为要保证创建对象或者Aggregate的所有固定规则,Factory创建的对象都要处于一致的状态;
  2. 工厂应当被抽象为所需的类型,而不是具体类。创建型的设计模式是我们常用的方式,有的时候还可以用构造函数,是一种实现策略,当然有的时候增加接口,是为了我们能耦合参数。

重建对象

回归到工厂构建对象,我们不但在新建对象的时候需要使用到工厂,在从持久化的内容中,重建对象的时候,应当满足下面要求,

    1. 不分配新的ID,也就是继续使用旧对象持久化的唯一标识,这也是实体具有的特点;
    2. 不满足固定规则的应该拒绝创建或者忽略掉,否则创建出的对象因某属性不存在,而存在缺陷。

标签:生命周期,掌管,对象,创建,工厂,满足,抽象,公寓
来源: https://www.cnblogs.com/weilai1917/p/12388419.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有