OOD的原则和模式
应该如何为对象类分配职责(responsibility)?对象之间应该如何协作?什么样的类应该做什么样的事情?这些都是系统设计中的关键问题,OO设计之象征的职责驱动设计(responsibility-driven design)。
什么是分析和设计
分析(analysis)强调的是对问题和需求的调查研究,而不是解决方案。eg,如果需要一个新的在线交易系统,那么,应该如何使用它?它应该具有哪些功能?
设计(design)强调的是满足需求的概念上的解决方案,而不是其实现。
有益的分析和设计可以概括为:做正确的事(分析),正确的做事(设计)。
关键步骤和图
【定义用例】-->【定义领域模型】-->【定义交互图】-->【定义设计类图】
定义用例
人们如何使用应用的情节或场景
定义领域模型
面向对象分析需要鉴别重要的概念、属性和关联。面向对象分析的结果可以表示为领域模型(domain model),在领域模型中展示重要的领域概念或对象。
注意:领域模型并不是对软件对象的描述,它是真实世界领域中的概念和想象可视化。因此也被称为概念对象模型(conceptual object model)。
分配对象职责并绘制交互图
顺序图(sequence diagram)是描述协作的常见表示法。它展示出软件对象之间的消息流,和由消息引起的方法调用。
定义类图
设计类图(design class diagram)用来有效地表示类定义的静态视图。这样可以描述类的属性和方法。