【发布时间】:2014-09-01 22:41:14
【问题描述】:
我有一个 Flight 类,它目前除了保存许多包含给定商业航班详细信息的变量之外什么都不做。
这些细节大部分只是通过构造函数传递,但其中一些需要计算或格式化。例如,我将航班到达时间格式化为字符串 "6th June",有时初始航班数据中缺少机场名称,因此我使用 airportcodes 和 airportnames 的数组来查找机场名称。
计算这些附加信息的方法是否应该位于航班类或一系列其他模型中,例如DateProcessor 或Airport?
【问题讨论】:
-
试金石是,当你需要做出改变时;您需要在多少个地方进行更改。
-
@Blacklight 我正在考虑的替代方案将涉及 Activity/Viewcontroller,它计算在类中存储此数据的数据。它的缺点是我必须跟踪哪个控制器首先访问该类,但阻止我的类变得太笨重,因为我将它保存在数据库中并使其可序列化。
-
@Deco 对不起,我删除了我的评论,因为它是多余的。克里斯 K 是完全正确的,集中你的代码并干燥。直觉上我会说你描述的任务可能属于飞行类,除非它们可能特定于某个视图。