所在位置:答疑 - 内容   
如何划分"数据服务类"、"数据访问类"
 

steven620
More options Oct 14 2010, 2:39 pm
潘老师,你好。
最近在设计中遇到一些困惑,主要是数据层设计时,不知如何划分"数据服务类"、"数据访问类"。"数据服务类"主要做些什么事情。 谢谢!!
UMLChina
More options Oct 14 2010, 2:47 pm
能否把问题再提得具体一些?例如,"我们在做一套食品检测系统,目前是这样做的...."

steven620
More options Oct 15 2010, 9:22 am
我们目前在做一个"环氧变送器",数据部分主要分为三块:测量数据(无需永久保存)、功能配置数据、设备校正数据。
在开机后,为了提高访问数据速度,我们将保存在NVMEM 中的所有数据一次性全部导入RAM 区,read 时直接从RAM 区读取而非NVMEM 区,write 时先 写RAM 区然后同步NVMEM 区。
在具体业务中需要读写数据时, 利用RAM(按照数据结构存放)、NVMEM(按文件存放)/所提供的接口直接进行访问。提供接口直接对RAM、NVMEM 中的相关数据区访问,
UMLChina
More options Oct 16 2010, 9:50 pm
数据层无论其具体形式如何,目的都是完成业务请求和数据请求之间的转换,从而使领域知识和数据存取知识尽量分离。
例如:"取最近三天的测量结果"是领域术语表达的业务请求,如何转成RAM、NVMEM 接口可以理解的命令,这个秘密封装在数据服务类中,也包括你说的 "为了提高访问数据速度,我们将保存在NVMEM 中的所有数据一次性全部导入RAM 区,read 时直接从RAM区读取而非NVMEM 区,write 时先写RAM 区然后同步NVMEM 区。"
另外看你的表达方式,估计行为部分也是分三块了,测量模块、配置模块、校正模块,领域知识不知道在哪里?恐怕要藏在长长的"算法"里或者数据访问的代码里了。