一个建立对象的问题

公司的财务预算,每个人每个月要有预算统计,每人每年要有合计,都统计到一张表中。

我该如何建立对象,是一每人每月建一个类,还是每年建一个类,怎么办?

没有必要根据时间轴来定义类,1年无非是12个月,从概念上来说
是一致的。还是应该从统计的内容部分入手来分析。

最小项是一个人一个月的工资、奖金、全勤奖的组合。最大项是刚才所说的十二个月的总和。

怎么建立?

使用数据库,一开始没必要想着建立对象。先建立数据表,然后操作这个数据表就可以了。

我何时控制数据的力度呢?建表也可以有多种方式,比如按年建,或按月建,我想现在先考虑一下,以至于以后的对象好操作。

当然首先有基本对象 如 工资、奖金、全勤
它们在不同时间有不同的值,这个值你是打印时计算还是之前计算后存放数据库。

你说的很对。

我已经想了一种办法。

建立 每用户每月的预算 为一个类,类中属性有用户ID、用户该月的薪金等属性、还有一个该月合计属性。方法就是数据库相关(saveDB,update,del)、计算该月合计等.

再建立一个管理预算类,其中有一个预算方法-计算年的、数据库相关(saveyearDB、..)

不知道这样对不对,banq帮我看看

其实你这里现在无所谓类, 就是一些数据库操作bean, 和数据关系紧密后就很不容易对象化,所以GOF设计模式基本是远离数据库的.

不会吧,远离数据库还怎么活啊。唯一知道分离的方法就是用DAO模式,你觉得合适么?

还有,jive不是也用数据库么?我看它结合的很好啊,我这个办法也是仿照它做的。

从要做什么事情开始(use case),谁会参与这件事情(actors,涉众),参与
的程度和方式等(sequence)入手,分析出现实问题相关的实体和边界类,
实体一般都会mapping道db里的一张表,employee、department、salary
等,用dao很容易设定方法如:
SalaryClientHelper.getSalary(employeeId,startMonth,endMonth)等等

是的,我已经按照这样的方式做了。现在关键的是对象粒度的大小,我不知道如何掌握。

显示的信息很多,要用到二维的数据,因此不知道对象建到什么程度。

去down几个免费或试用的类似软件,参考后再考虑自己的系统

现在是参考jive,可是我想建立的没有这样的模型

bang的回答是正解,cc我觉得你还需要深入体会一下面向OO设计的精神