我即将开始我的最新项目,它基本上是一个从数据库中获取一些数据然后将这些数据显示为图表的应用程序!
现在,尽管这看起来很简单,但在面向对象编程方面以非常正确的方式完成对我来说很重要。
现在我的想法如下:
我想创建以下四个类:
适配器:
将应用程序连接到数据库并接收数据的类
呼叫队列:
这是一个对象,其差异取决于从数据库中接收的数据类型以及您希望在图表上显示的数据类型。这方面的一个例子是奶酪和水果。它们都是食物,但它们是非常不同类型的食物。
统计数据
这将是一个用于计算从数据库接收的信息的工具类(例如将其更改为百分比而不是原始数据)
图形
这将是从统计类获取信息并将数字转换为图形的类
图形用户界面
这当然是我将在其中发布图表的 GUI 类!
现在我想让项目尽可能面向对象。但我的问题是来自数据库的信息并不总是相同的。例如,如果每天获取数据,它将与每月不同。这意味着信息总是会根据用户的需要而改变。
我将如何使这个程序面向对象?以及我的班级之间应该有什么类型的联系才能使其最容易访问。我必须创建子类以简化它吗?
我应该将数据库中的所有信息直接添加到 CallQueue 类中,还是应该稍后创建该对象?
更新 - 详细说明
名称 callQueue 不是流式实现,它只是一个对象,应该包含从数据库接收的数据值(请注意,这仍处于构思阶段,没有任何实现)。这个想法是用户打开程序,然后选择一天,然后选择一天,例如:04/11/2012 到 10/11/2012。对象值更改的原因是当日期更改为例如以下情况时:04/11/2012 - 04/12/2012 然后将创建一个新图表,将计算来自数据库的新信息等。
我也很困惑的一件事是:当您有一个从数据库创建的对象时(请注意,如果你们有更好的想法,这可能会被优化)那么您将如何计算统计数据?调用数据适配器的统计类然后处理数据然后创建包含计算数据的对象会更好吗?
然后 Graph 类需要获取对象数据并插入到图中。