OO Design 面向对象设计
2009-12-17 11:15 Virus-BeautyCode 阅读(1199) 评论(0) 编辑 收藏 举报
1、Application Requirements
获取应用的需求。方式比较多,可以到客户场地亲身体验,可以通过调查问卷,可以找业务的相关人员了解,可以请客户帮忙收集一些,可以请客户座谈,等等。如果可以亲身体验客户的工作流程,个人认为是最好不过的了,
2、Use Case
将需求分解成一个一个的用例,用例以职责单一为指导原则,一个用例也就是一个功能,实现一个功能即可,这样将来一号进行工作的分配,
3、Object Design
使用CRC Class Responsbility Collaborator,类职责卡的方式来设计对象。
首先可以从用例中分解出名词,罗列所有的用例名词,列出来这些名词,这些可都是潜在的对象。
当然了,他们也不全是对象,有的可能是用户角色,也有的就是对象的一些字段,剩下的就可以抽象出对象了。
最好将可编辑和只读对象、单个对象和集合对象却分开来,就算他们是同一个类型的对象,这样有利于控制权限以及提高可扩展性和维护性。
然后根据这些CRC画出类关系图
4、Revising the Desin
修订前面的设计,可以通过迭代的方式,或者原型的方式,反复沿着设计,以求达到较优的状态。这个阶段可能会撤销合并一些对象,也可能会增加一些对象。
上面只是粗略的提了一些意见,不成熟的地方还请大家多指教了。
谢谢!!