1、教案(第 1 页)章章节节名名称称7 7 软件设计软件设计授授课课安安排排授授 课课时时 数数2授授 课时课时间间第 7 次授授 课课方方 法法讲练结合授授 课课 教教具具机房教教学学目目的的掌握什么是设计和 UML 设计教教学学重重点点什么是设计和 UML 设计教教学学难难点点什么是设计和 UML 设计什么是设计?把问题转化为解决方案的创造性过程;解决方案的描述也称为设计。那什么是把问题转化为解决方案的创造性过程呢?举个例子。张君和李丽想做一栋新房子。他们的需求如下:三个小孩有玩耍的空间,并独立拥有各自的睡房一间主人卧房一个厨房冬天可取暖,夏天可制冷室内通水通电等等第二块设计师的方案:屋子的
2、楼上有四间睡房,楼下有一间客房,一间厨房,一个玩具房和一个杂物室等等。装订线教案(附页)(第2页)还有其他方案吗?设计直观有平米图,这样就可以设计,软件设计也是要框架下构造分析模型设计模型设计文档回答 How to do?怎么样去做,在需求中必须做什么,在设计中我们就要回答怎么样去做,整个设计阶段,可以分为概要设计、详细设计,在面向对象的概要设计中,主要分为类设计,以及动态模型设计,在详细设计中,可以进行界面设计面向对象设计概述、类设计、动态模型设计、用户界面设计,包含了概要设计和详细设计,首先我们看面向对象设计概述,我们将了解一下面向对象设计块工作的主要内容面向对象设计过程的步骤1.系统设计
3、系统整体结构的设计2.对象设计对 OOA 模型中类/对象模型的具体化和细化 ,把类搞定,类图产生的地方3.消息设计从对象关系模型,设计出消息模型教案(附页)(第3页)4.设计模型复审8OOD 就是面向对象设计,面向对象设计的原则(一)模块化对象就是模块,把数据和方法结合在一起就是类,类就是模块的体系(二)抽象过程抽象数据抽象参数化抽象(某些 PDL)比如说有一个杯子,你可能描述它的长高宽,颜色,要求你做一个淘宝上杯子的数据,你就要价格,用一张图,样子,它的长宽高,用户使用的评价等一系列描述,换一个角度,你是生产杯子的厂家,对杯子的描述就非常不同,杯子的原材料,模具,杯盖,包装等都要进行描述,不
4、同的领域,同样事情就要有不同的描述。描述出来就成为抽象。9(三)信息隐藏通过对象的封装性实现大家想想,属性一般是什么样?是私有的。我想访问它怎么办?一般是访问它 get 和 set 的方法(四)弱耦合降低交互耦合提高继承耦合我们一般喜欢继承耦合,好比说,教师和学生,设计成两个类,都从 USER 中继承,这样关系就非常明确10 (五)强内聚-和耦合相关(耦合降低了,内聚就渐强)服务内聚类内聚一般-特殊内聚教案(附页)(第4页)(六)可重用(可重用的类)尽量使用已有的类创建新类时,考虑将来的可重用性11 从 OA 模型怎么转换冲 OOD 模型设计模型底端为子系统设计,子系统来源叫做用例,用例可以独
5、自完成,就可以做为一个子系统,类及对象设计,涉及类,类有类名、属性和方法,CRC 索引卡片中找寻类,属性、操作、协作者要了解这些,对类进行丰富,消息设计对对象关系模型中出来,最后责任设计,验证。12 目录面向对象设计概述类设计动态模型设计用户界面设计13 关键抽象是在系统范围上的一些重要概念, 主要是从需求中得到 (例如词汇表、业务规约以及用例模型) ,这些概念也会涉及到系统所针对的业务领域知识。关键抽象通常表现为系统的实体 ,其重要的原因为14 候选类在分析的初始过程中阐明的类称为候选类进一步分析,冗余类,无关类,标识类的角色,模糊类15 类是一组对象,这些对象具有共同的属性和共同的行为。类
6、是创建对象的模板类可捕获对象的本质。对象是类的实例化。例图16 在标识类时,需查找: 有形事物事件 扮演的角色 交互 位置 组织单位17 标识的类也称为候选类。可从以下方面标识类:需求说明 用例 应用程序专家研究系统分析以下方面可标识其他候选类:以前的系统 需求说明用例 应用程序专家 相似的系统18 类是对一组对象的描述,这些对象具有相似的属性、操作、关系和行为类:对一组对象的描述,这些对象具有相同的属性、操作、方法、关系和语义用一个矩形进行描述,分为三个部分:类名称 属性 方法19 类名称通常可对应于现实生活中的实体(-是私有,+公有,#受保护的)20 属性中添加属性方法教案(附页)(第5页
7、)21 类不是孤立存在的,因此,类与类之间创建了一种关系:类关系可能指明某种共享关系类关系可能指明某种类型的语义连接类关系中:组合 聚合 依赖 泛化与继承 关联 接口与实现 组合22 关联:两个或多个类符之间的一种关系,此关系涉及类的各个实例之间的连接别类之后,需要识别关联多重性(multiplicity)定义有多少对象参与了某个关系各个类都可能与自身有关联雇员-部门-公司23 泛化:它是较一般类和较具体类之间的分类关系(继承)泛化:标识各个类之间的共同性。指明特化类(子类)的对象可取代泛化类(父类)的对象。是“is-a”关系。24 依赖:如果一个类依靠另一个类的服务来完成其角色,则它们之间的
8、关系称为依存关系依赖关系指明两个或多个类之间的语义关系,尽管两个类之间没有明确的关联,一个类发生变化也会导致另一个类发生变化。可用一种构造型来表示依赖的类型。25 聚合:一种特殊形式的关联,指定了聚合(整体)和组件部分之间的整体 - 部分关系共享聚合(空心菱形)意味着在组合端的多重性有多个。模拟“整体-部分”关系。26 组合:一种特殊形式的关联,指定了聚合(整体)和组件部分之间的整体-部分关系。这是一种更强的聚合,表达了类与类之间更强的耦合组合的图形为实心菱形。容器负责创建和删除各个部分。27 接口和实现:类接口用于描述类的外部可见行为。它呈现为一个圆圈与名称一同出现。教案(附页)(第6页)类的实现是其内部视图,涵盖了其行为的秘密类的接口提供了其外部视图,因此在隐藏其结构以及其行为的秘密时,强调了抽象28 图书管理的类图。图书类型的表,图书基本信息表,图书借阅信息表,借阅证件,都是关联关系
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。