【文档说明】软件设计面向对象设计概述汇总课件.ppt,共(30)页,1.004 MB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-44901.html
以下为本文档部分文字说明:
软件设计什么是设计?把问题转化为解决方案的创造性过程;解决方案的描述也称为设计。设计和需求有什么不同?张君和李丽想做一栋新房子。他们的需求如下:三个小孩有玩耍的空间,并独立拥有各自的睡房一间主人卧房一个厨房冬天可取暖,夏天可制冷室内通水通电等等设计和需求有什么不同?设计师的方案:屋子
的楼上有四间睡房,楼下有一间客房,一间厨房,一个玩具房和一个杂物室等等。还有其他方案吗?软件设计的任务分析模型设计模型设计文档回答Howtodo?可以分为概要设计、详细设计软件设计—目录面向对象设计概述类设计动态
模型设计用户界面设计面向对象设计概述面向对象设计过程的步骤1.系统设计•系统整体结构的设计2.对象设计•对OOA模型中类/对象模型的具体化和细化3.消息设计•从对象——关系模型,设计出消息模型4.设计模型复审OOD遵循
的原则(一)模块化对象就是模块,把数据和方法结合在一起(二)抽象过程抽象数据抽象参数化抽象(某些PDL)OOD遵循的原则(三)信息隐藏通过对象的封装性实现(四)弱耦合降低交互耦合提高继承耦合OOD遵循的原则(五)强内聚服务内聚类内聚一般-特殊内聚(六)可重用尽量使用
已有的类创建新类时,考虑将来的可重用性用例对象-关系模型CRC索引卡片子系统设计类及对象设计消息设计责任设计分析模型设计模型对象-行为模型将OO分析模型转换为OO设计模型软件设计—目录面向对象设计概述类设计动
态模型设计用户界面设计关键抽象是在系统范围上的一些重要概念,主要是从需求中得到(例如词汇表、业务规约以及用例模型),这些概念也会涉及到系统所针对的业务领域知识。关键抽象通常表现为系统的实体,其重要
的原因为:关键抽象在线拍卖拍卖和拍卖物项信用卡竞拍分类用户帐户和未付款项关键抽象业务实体实体之间的关系例如:一个拍卖就包含一个拍卖物项强调与系统设计有关的实体排除系统外部多余的实体最后,关键抽象成为分析模型中的类候选类在分析的初始过程中阐明的类称为候选类冗余类无关类标识类的角色多个类定义同一
个实体任何不属于应用程序域的类都需去除保留基类,而排除所有作为角色的类标识候选类模糊类没有明确功能的类称为模糊类识别类3-1类是一组对象,这些对象具有共同的属性和共同的行为类是创建对象的模板类可捕获对象的本质对象是类的实例化识别类3-2在标识类时,需查找:有形
事物事件扮演的角色交互位置组织单位识别类3-3标识的类也称为候选类。可从以下方面标识类:需求说明用例应用程序专家研究系统分析以下方面可标识其他候选类:相似的系统以前的系统用例应用程序专家需求说明以前的系统相似的系统候选类类图2-1结构说明语法类对一组对象的描述,这些
对象具有相同的属性、操作、方法、关系和语义类是对一组对象的描述,这些对象具有相似的属性、操作、关系和行为。Windowsize:Sizevisibility:booleandisplay()hide()类名称属性操作类名称属性方法类图2-2类名称通常可对应于现实
生活中的实体类名称类属性类方法属性(:特性,特征)属性是进一步描述对象实例的数据。操作(:方法、服务和行为)操作是对象可执行的过程。AccountHolder-Name:String-Age:Integer+Status:Boolean#Ho
bby:StringAccountHolder-Name:String-Age:Integer+Status:Boolean#Hobby:String+GetName():String+SetName(sName:String)类图示例
类关系类不是孤立存在的因此,类与类之间创建了一种关系:类关系可能指明某种共享关系类关系可能指明某种类型的语义连接关联接口与实现组合泛化与继承聚合依赖类关系关联结构说明语法关联两个或多个类符之间的一种关
系,此关系涉及类的各个实例之间的连接识别类之后,需要识别关联多重性(multiplicity)定义有多少对象参与了某个关系各个类都可能与自身有关联公司部门雇员示例:“雇员为公司工作”泛化结构说明语法泛化它是较一般类和较具体类之间的分类关系泛化:标识各个类之间的共同性。指明特化类(子
类)的对象可取代泛化类(父类)的对象。是“is-a”关系。形状{抽象}圆圈父类子类抽象类泛化关系依赖结构说明语法依存如果一个类依靠另一个类的服务来完成其角色,则它们之间的关系称为依存关系依赖关系指明两个或多个类之间的语义关系,尽管两个类之间
没有明确的关联,一个类发生变化也会导致另一个类发生变化。可用一种构造型来表示依赖的类型。聚合结构说明语法聚合一种特殊形式的关联,指定了聚合(整体)和组件部分之间的整体-部分关系共享聚合(空心菱形)意味着在组合端的多重性有多个。模拟“整体-部分”关系。
整体部分门房子1..*2..*汽车组合结构说明语法组合一种特殊形式的关联,指定了聚合(整体)和组件部分之间的整体-部分关系这是一种更强的聚合,表达了类与类之间更强的耦合组合的图形为实心菱形。容器负责创建和删除各个部分。圆圈点多
边形点圆圈接口和实现符号•类接口用于描述类的外部可见行为。•它呈现为一个圆圈与名称一同出现。验证•类的实现是其内部视图,涵盖了其行为的秘密•类的接口提供了其外部视图,因此在隐藏其结构以及其行为的秘密时,强调了抽象绘制”图书管理”系统的类图接口和实
现符号•类接口用于描述类的外部可见行为。•它呈现为一个圆圈与名称一同出现。验证•类的实现是其内部视图,涵盖了其行为的秘密•类的接口提供了其外部视图,因此在隐藏其结构以及其行为的秘密时,强调了抽象绘制”图书管理”系统的类图