【发布时间】:2011-04-29 23:15:06
【问题描述】:
第一季度。 在我的面向对象建模和设计的大学研究中,他们建议考虑对象可以为它的方法做什么,以及它对它的属性的责任是什么。所有试图澄清的尝试都导致了进一步的混乱。
这往往会生成一个类图,其中包含具有所有操作的参与者和只保存数据的内部类。
这似乎不正确。是否有另一种思考如何为对象建模的方法?
第二季度。此外,该课程似乎强调在现实世界中对对象进行建模,但在领域模型中不一定有意义。 IE。在医疗实践中,他们有Patient: CreateAppointment(), CancelAppointment(),但这不是它的实施方式(您可以修改约会集合)。有没有其他的想法?
示例 Q1
秘书:RecordAppointment()、RecordAppointmentCancellation()
约会:时间、日期、...(无方法)
示例 Q2
医生:SeePatient()
虽然SeePatient 是一个用例,但它对于实际类上的方法没有意义。你怎么看这个?
【问题讨论】:
-
没有一成不变的方法。它过度简化了所有不同的有效方法,只考虑
car.wheelCount。例如,在约会的情况下,doctorsOfficeSchedule.createAppointment(patient, ...)似乎更“清楚”。也就是说,我倾向于面向数据与“面向对象”。
标签: oop class-design analysis