文档详情

09章 面向对象方法学引论.ppt

发布:2016-12-04约2万字共66页下载文档
文本预览下载声明
* * * * * * 类的名字应该是富于描述性的、简洁的而且无二义性的。 * * * * 1、关联---例如,作家使用计算机,人们就认为在作家和计算机之间存在某种语义连接,因此,在类图中应该在作家类和计算机类之间建立关联关系。 * * * 在上图中,查找一个文件的方法就是,首先定下目录,然后在该目录内查找指定的文件名。 * * * * 普通泛化与9.2.2节中讲过的继承基本相同。 * * 上图给出一个比较复杂的类图示例,这个例子综合应用了前面讲过的许多概念和图示符号。上图表明,一幅工程蓝图由许多图形组成,图形可以是直线、圆、多边形或组合图,而多边形由直线组成,组合图由各种线型混合而成。 * * * 依赖关系:例如,一个类使用另一个类的对象作为操作的参数,一个类用另一个类的对象作为它的数据成员,一个类向另一个类发消息等,这样的两个类之间都存在依赖关系。 * * * * * * * * * * 1、行为者代表一种角色—例如,在自动售货机系统中,使用售货功能的人既可以是张三(买矿泉水)也可以是李四(买可乐),但是不能把张三或李四这样的个体对象称为行为者。 2、一个具体的人可以充当多种不同角色—例如,某个人既可以为售货机添加商品(执行供货功能),又可以把售货机中的钱取走(执行取货款功能)。 * * * * * 9.6 功能模型 2.寻找用例 还有一些不是针对具体行为者而是针对整个系统的问题,也能帮助建模者发现用例,例如: 系统需要哪些输入输出?输入来自何处?输出到哪里去? 当前使用的系统(可能是人工系统)存在的主要问题是什么? 注意,最后这两个问题并不意味着没有行为者也可以有用例,只是在获取用例时还不知道行为者是谁。事实上,一个用例必须至少与一个行为者相关联。 9.6.2 用例建模 主要内容 9.1 面向对象方法学概述 9.2 面向对象的概念 9.3 面向对象模型 9.4 对象模型 9.5 动态模型 9.6 功能模型 9.7 3种模型之间的关系 9.7 3种模型之间的关系 9.7 3种模型之间的关系 9.7 3种模型之间的关系 功能模型指明了系统应该“做什么”;动态模型明确规定了什么时候(即在何种状态下接受了什么事件的触发)做;对象模型则定义了做事情的实体。 在面向对象方法学中,对象模型是最基本最重要的,它为其他两种模型奠定了基础,人们依靠对象模型完成3种模型的集成。下面扼要地叙述3种模型之间的关系。 针对每个类建立的动态模型,描述了类实例的生命周期或运行周期。 状态转换驱使行为发生,这些行为在数据流图中被映射成处理,在用例图中被映射成用例,它们同时与类图中的服务相对应。 9.7 3种模型之间的关系 9.7 3种模型之间的关系 功能模型中的处理(或用例)对应于对象模型中的类所提供的服务。通常,复杂的处理(或用例)对应于复杂对象提供的服务,简单的处理(或用例)对应于更基本的对象提供的服务。有时一个处理(或用例)对应多个服务,也有一个服务对应多个处理(或用例)的时候。 数据流图中的数据存储,以及数据的源点/终点,通常是对象模型中的对象。 数据流图中的数据流,往往是对象模型中对象的属性值,也可能是整个对象。 用例图中的行为者,可能是对象模型中的对象。 功能模型中的处理(或用例)可能产生动态模型中的事件。 对象模型描述了数据流图中的数据流、数据存储以及数据源点/终点的结构。 本章小结 1. 面向对象范型明显优于结构化范型,使用面向对象范型能够开发出稳定性好、可重用性好和可维护性好的软件。 2.面向对象方法学比较自然地模拟了人类认识客观世界的思维方式,在结构上尽可能一致。 3.系统中每个对象都属于一个特定的对象类。类是对具有相同属性和行为的一组相似对象的定义。按照子类、父类的关系,把众多的类进一步组织成一个层次系统,处于下一层次上的类可以自动继承位于上一层次的类的属性和行为。 4.用面向对象观点建立系统的模型,分别是描述系统静态结构的对象模型、描述系统控制结构的动态模型以及描述系统计算结构的功能模型。其中,对象模型是最基本、最核心、最重要的。 5.统一建模语言UML是国际对象管理组织OMG批准的基于面向对象技术的标准建模语言。使用UML的类图来建立对象模型,使用UML的状态图来建立动态模型,使用数据流图或UML的用例图来建立功能模型。在UML中把用用例图建立起来的系统模型称为用例模型。 本章小结 本章结束 * * * 1、面向对象方法用对象分解取代了传统方法的功能分解。 2、每当建立该对象类的一个新实例时,就按照类中对数据的定义为这个新对象生成一组专用的数据,以便描述该对象独特的属性值。类中定义的方法,是允许施加于该类对象上的操作,是
显示全部
相似文档