我所需要的
我想要建立一个应用程序,其中有一个模型“商店”。每家商店都有营业时间。这些开放时间可能相当复杂。我认为最能证明复杂性的例子是:
正如你所看到的,有许多复杂的组合。
由此产生的数据结构应该支持三件事:
我的方法
我试着把它建模成一个对象结构。我现在的想法是:
- One class is a "weekly opening time", which models opening times like #1 (opening and closing time for each day of the week)
- One class for specific single dates (24th of December)
- One class for recurring times each month (each second Saturday of a month)
- One class for bigger time spans (18th April 2014 to 30th of May 2014)
- More, if the need occurs.
我看到的问题
我最关心的是可用性:如何打印像这样建模的开放时间,以及用户如何输入这些时间?
我对其他方法是开放的。什么都没有实现,当我想到上面的方法时,我胃疼……
发布于 2014-06-19 13:01:31
(就数据建模标记而言)一个单一实体:
OpeningPeriod(CalendarDay、OpeningHour、ClosingHour)
或
OpeningPeriod(OpeningTimeStamp,ClosingTimeStamp)。
任何商店/组织的完整开放/关闭时间表是一组这样的开业期。
不要试图捕捉某种“通用的、无所不包的预测方式”来描述任何可能的开场/闭幕式,所有的例外和例外都包括在内。你会失败,因为“例外”的性质是没有尽头的。而且,当您开始尝试在重叠的规则之间“排序”时,您将很快地遇到严重的问题。
只要尝试在UI中构建尽可能多的基于“标准”的基于规则的工具,再加上一个在OpeningPeriod中最底层管理调度的工具,以处理任何可能的“由所提供的规则未处理的异常”。
https://stackoverflow.com/questions/24294524
复制相似问题