2011-09-01 63 views
-2

我想为连续的预定时间段创建报告。如何创建和管理时间段

从本质上讲,我希望能够到:

的时间周期,例如从一个月10日至下的第9位。然后,我希望能够生成报告,并在报告中附加current期间,在此示例中该报告将为August 10, 2011September 9, 2011。那么假设6个月以后我再次​​运行报告,即使它是6个月以后,期间应该是September 10, 2011October 9, 2011.

我曾想过创建一个时间模型,该模型会有“开始”,“结束”和“当前”字段。 “开始”和“结束”字段将保存数字日期值,即分别继续上述示例10和9。 '当前'字段将保存当前的结束日期,该日期(使用上述示例)将是September 9, 2011。随着“当前”时期和“开始”和“结束”价值观的变化,我可以根据需求创建下一个逻辑时期。此外,我还有机会根据需要修改期限。

尽管上述方法应该起作用,但它似乎并不是一种有效的方法。有更好的替代方法吗?我能做些什么来改善我的方法?

谢谢。

+0

你试图解决什么问题? – Winfield

+0

这个问题没有什么意义。如果您为了清晰起见可以对其进行改进,请举报审核主持人的注意事项。 –

+0

这是不可能回答的。一方面,你已经回答了它,创造一个无限期的复发期,你描述它。另一方面,这似乎是关于数据结构的一个问题,数据结构大概有两件事:你把什么放进去,以及如何从中提取事物。由于你对这些细节过于模糊,所以这个问题不具有建设性。你有可能提供更多关于你想要做什么的信息吗? –

回答

0

有一个理想技术来解决你的问题。这就是所谓的测试驱动开发。在这种情况下它是理想的,因为您可以在不需要编写代码的情况下描述解决方案。仅仅通过描述解决方案,你就应该实际编码的内容开发了许多线索。

由于您可能真的不知道要写什么代码,所以Cucumber在您的情况下似乎很理想。你可以用英语来描述你想要解决的问题,使用Cucumber来运行它,它实际上会指示你一路走向解决方案。

如果您对要编写的代码有一些了解,最好直接使用Test :: Unit或RSpec。这些方法更接近实际的代码:你想要解决的问题需要用Ruby编写。

Pragmatic Programmer有关于这两种技术的优秀书籍。

由于你所描述的问题只对你有特殊的价值,你很难在StackOverflow上找到很多实际的实现。用黄瓜来描述自己的问题似乎是最好的前进方式。