课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
模型驱动设计是随着互联网的不断发展而逐渐被程序员所掌握的一种开发模式,下面我们就一起来了解下,模型驱动设计中需要关注的问题都有哪些。
1、模型驱动
人在打造数字世界时必然会参照自己所存在的并且是自己所认知的世界,因为人不可能想像出自己无法认知的事物。人们所抽象的现实世界的事物的模型,就成了建设数字世界的基础,而数据则为构造数字世界的基本单元,数字世界成了现实世界的映射。
模型是数字世界万物的概念,程序是将概念具像化的工具,打造数字世界需从建模开始。
2、领域驱动
领域驱动设计常用在商业层面的模型上,如:包含名称、编号、规格、出厂日期等信息的商品模型;同时也可以用在技术层面的模型上,如:包含名称、编码、字段、关系、约束等用来描述模型的信息的模型。前者称之为「业务模型」,后者则是「元模型」。业务模型可以被元模型描述。
如果把模型映射为数据库表,那么元模型所对应的表中的每条记录都是元数据,业务模型所对应的表中的每条记录都是业务数据。
3、模型
模型的主要职责是前、后端协议处理,以及对数据进行读写操作。
前、后端协议的处理包括元数据适配和HTTP请求构造。与后端对接的工作都控制在这一层,其他层的运作都基于这层适配后的结果。
在这层中进行读写的数据,既有业务数据又有元数据。元数据只加载一次,将适配后的结果进行缓存;业务数据只暂时缓存尚未持久化的处于草稿状态的记录,持久化之后会将其删除。
4、ViewModel
VM的职责很单纯,就是处理业务数据流转相关的逻辑,即数据的分发、汇总与联动。理论上,在实例与数据的关系
每个VM实例都来源于数据,是数据的变形,是具备能力的数据。
根据数据源的形态,VM实例大致分为列表、对象和值三种。如果值是布尔、数字、字符串等简单类型,那就即刻终止;若值为对象、列表等复杂类型,则要递归下去,直到末端为简单类型。
需要注意的是,VM实例与数据一一对应,其实质就是数据本身,而不是数据的容器。也就是说,VM实例不是装水的瓶子,不能把已经装的水倒掉换些水进来,而是一起丢弃。
5、生命周期
任何对象的生命周期都可粗略地分为初始化、活动中与销毁三个阶段。
在初始化时根据策略获取自身数据源,与上级VM实例创建的流进行对接形成数据管道,然后创建向外推送自身变化的流。
活动期间就是不断地与外界进行数据交换:
视图输入变化时,通过对应的VM实例提交自身的数据变更
在处理被提交的输入数据时会对其进行保留,并发出有数据提交的信号
自身的数据变化会通过数据管道流向下级VM实例
外部(主要是上级)接收到信号后会做些后续处理
销毁时做些清理、善后的工作,如:移除子VM引用,取消订阅等。这层不直接进行任何与请求服务、执行动作相关的处理。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请在707945861群中学习了解。