【问题标题】:Best practice for structuring data over time [closed]随着时间的推移构建数据的最佳实践[关闭]
【发布时间】:2012-05-11 18:59:48
【问题描述】:

假设,如果我随着时间的推移跟踪同事的工作。构建数据的最佳方式是什么?我的例子完全是虚构的,但这是一个在实践中出现过很多次的编程问题。

我的问题最好用一个简单的例子来说明:

您每天都在将同事的工作硬编码到三个单独的列表中。 假设清单 1 是“他/她需要做什么”。 假设列表 2 是“他/她做了什么”。 最后,列表 3 是记录这些值的日期。

所有列表都是累积的,可以随时间增加或减少。

因此,在第四天,列表 1 将包含 4 个整数:{100, 97, 94, 101} - 表示剩余工作的整数。 第 4 天,列表 2 将包含 4 个累积整数值:{0, 3, 3, 5} 代表这位同事到目前为止所做的工作(每次他们完成一项工作,您就在列表中添加一个)。 清单 3 将包含日期(假设程序每天运行一次,因此 01/01/2012、02/01/2012 等)。

现在,显然使用列表来存储这些数据是不好的做法 - 忘记输入一条数据,您的所有数据都已损坏并被关闭。

在这种情况下,最佳做法是什么?数据应该如何结构化?在我看来,从日期到结果的映射似乎是一种很好的做法,这是否正确,并创建一个自定义类来保存“已完成的工作/要完成的工作”信息?

【问题讨论】:

标签: oop class design-patterns


【解决方案1】:

我认为您需要一个带时间戳的抽象(如 Task 类)来存储您想要存储的内容,并提供一个允许查询世界的当前状态以及的接口历史 状态。

看看 Fowler 的 temporal patterns 以获得灵感。

【讨论】:

    猜你喜欢
    • 2013-09-03
    • 1970-01-01
    • 2011-10-29
    • 1970-01-01
    • 2016-02-20
    • 2023-02-05
    • 1970-01-01
    • 1970-01-01
    • 2020-04-21
    相关资源
    最近更新 更多