假设,如果我跟踪同事的工作。构建数据的最佳方法是什么?我的例子是完全弥补的,但这是一个在实践中出现了很多次的编程问题。
我的问题最好通过一个简单的例子说明:
您每天都会将同事的工作硬编码到三个单独的列表中。 让我们说列表1是“他/她需要做什么”。 让我们说清单2是“他/她做了什么”。 最后,列表3是记录这些值的日期。
所有列表都是累积的,可以随着时间的推移而增加或减少。
因此,在第四天,列表1将由4个整数组成:{100,97,94,101} - 表示剩余要完成的工作的整数。 在第四天,列表2将包含4个累积整数值:{0,3,3,5}表示此同事到目前为止所做的工作(每次他们完成一项工作,您将一个添加到列表中)。 列表3将包含日期(假设程序每天运行一次,所以2012年1月1日,2012年1月2日等等)。
现在,显然使用列表存储这些数据是不好的做法 - 忘记输入一个数据并且所有数据都被损坏并且被一个数据关闭。
在这种情况下,最佳做法是什么?如何构建数据?在我看来,从日期到结果的映射似乎是一种良好的做法,这是正确的,并创建一个自定义类来保存“完成工作/工作”信息吗?
答案 0 :(得分:1)
我认为您需要一个带时间戳的抽象(如Task
类)来存储您想要存储的内容,并提供一个允许查询当前状态的界面以及< em>历史州。
看看福勒的temporal patterns获取灵感。