找回密码
 欢迎注册
搜索
热搜: 活动 交友 discuz
查看: 1752|回复: 5

Tracking the Person/Patient?

[复制链接]
发表于 2003-11-6 14:18:46 | 显示全部楼层 |阅读模式
你们这样做了吗?是否有必要?
发表于 2003-11-6 14:34:58 | 显示全部楼层

Tracking the Person/Patient?

我是觉的没有什么必要,PERSON是一个实体类,代表着信息,使用DATATIME就有一些事件的意味,显得信息实体和行为之间有些不清楚,TRACK似乎没有必要继承PERSON,DATATIME属于行为的标志,可以在行为中直接使用PERSON。
发表于 2003-11-6 16:07:33 | 显示全部楼层

Tracking the Person/Patient?

我认为这种设计是必要的,但不一定是必须的:
1、 如果你的设计中需要跟踪 person 的变更,那就需要实现这个设计:
personTrack 类跟踪了person 实体的变更,或者可以这样认为,personTrack 其实就是以DateTime为横坐标的一系列 person 类的快照(snapshot),快照可以不只一个,所以是 0-* 关系。同时,快照需要保存person类的所有信息,所以 personTrack从person类继承是最好的实现方式。
注:其实这就是一个快照模式(snapshot pattern)的实现。
  举例: 小王 是person类的一个实例,1998年,小王的家庭住址为:地球;而在 2001年,小王家搬到了 火星。那么,可能有这样的调用:
            小王.getAddress(1998) = \'地球\';
            小王.getAddress(2001) = \'火星\';
2、如果你的系统无须跟踪 person 随时间的变化,那就不必实现这个设计。
发表于 2003-11-6 18:46:39 | 显示全部楼层

Tracking the Person/Patient?

如果从这方面考虑,可以认为有必要。
但我想需要从自己系统的整体架构来考虑是否需要,如果考虑到将PERSON等实体的信息也需要进行版本化的设计,那么可能就不需要这样设计,因为如果地址进行变更,那么肯定需要系统中关于PERSON的信息单元进行新版本数据的生成,而时间则是版本中的一个必须的属性。如果没有版本化控制,这样做比较合理。
 楼主| 发表于 2003-11-7 08:55:10 | 显示全部楼层

Tracking the Person/Patient?

临床业务系统设计中,应该有许多这样的tracking,这是衡量一个系统是否考虑周全的一个指标。
发表于 2003-11-7 12:23:01 | 显示全部楼层

Tracking the Person/Patient?

其实我的意思是在系统中通过一个专门的机制来解决这个问题,使用太多的TRACKING对系统会有一定的影响
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

快速回复 返回顶部 返回列表