第九讲包图复习ppt课件.pptx

上传人:飞****2 文档编号:71802775 上传时间:2023-02-06 格式:PPTX 页数:25 大小:1.42MB
返回 下载 相关 举报
第九讲包图复习ppt课件.pptx_第1页
第1页 / 共25页
第九讲包图复习ppt课件.pptx_第2页
第2页 / 共25页
点击查看更多>>
资源描述

《第九讲包图复习ppt课件.pptx》由会员分享,可在线阅读,更多相关《第九讲包图复习ppt课件.pptx(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、LOGO第九讲第九讲 包图包图目录目录包图的概念包图的概念包的表示包的表示包图中的关系包图中的关系阅读包图阅读包图创建包图创建包图包图建模包图建模21.包图的概念包图的概念模型的组织结构系统的三层结构先分层再细分成包的方式用户界面代表与用户进行交互的界面业务逻辑层用来处理系统的业务流程数据访问层是程序中和数据库进行交互的层31.包图的概念包图的概念 对复杂系统进行建模时,经常需要处理大量的类、接口、构件、节点和图,有必要将这些元素进行分组,就是把语义相近并倾向于一起变化的元素组织起来加入同一包,这样方便理解和处理整个模型,而且也便于轻松地控制这些元素的可见性,使一些元素在包外可见,一些元素隐藏

2、在包内。41.包图的概念包图的概念1.包图(Package Diagram)是一种维护和描述系统总体结构的模型的重要建模工具,通过对图中各个包以及包之间关系的描述,展现出系统的模块与模块之间的依赖关系。包图51.包图的概念包图的概念2.包图的作用对语义上相关的元素进行分组提供配置管理单元在设计时,提供并行工作的单元提供封装的命名空间3.包图中的元素 在包中可以拥有各种其他元素,包括类、接口、构件、节点、协作、用例,甚至是其它子包或图。一个元素只能属于一个包!62.包的表示包的表示 UML中,用文件夹符号来表示一个包,它包含2栏。PageNamePageNameClassName-1ClassN

3、ame-2.PageName类名Rose常用表示法包名放在第一栏在第二栏画出所包含的类图形表示第二栏列出包含的类名包名放在第二栏System:WebUIclass嵌套包包的表示法72.包的表示包的表示1.包的名称UISystem:Web:UI简单名路径名 每个包必须有一个与其它包相区别的名称。标识包名称的格式有两种:简单名(Simple Name)和路径名(Path Name)。简单名:仅包含一个名称字符串;路径名:用该包的外围包的名字作为前缀,加上包本身的名字。82.包的表示包的表示 2.包的元素在一个包中可以拥有各种元素,包括类、接口、构件、节点、协作、用例,甚至是其它包或图这是一种组成关

4、系,意味着元素是在这个包中声明的,一个元素只能属于一个包。每一个包就意味着一个独立的命名空间,两个不同的包,可以具有相同的元素名,但由于所位于的包名不同,因此其全名仍然是不同的。在包中表示拥有的元素时,有两种方法:一是在第二栏中列出所包含的元素名,二是在第二栏中画出所包含的元素的图形表示。92.包的表示包的表示 3.包的可见性 像类中的属性和方法一样,包中的元素也有可见性,包内元素的可见性控制了包外部元素访问包内部元素的权限。包包A中元素的可见性中元素的可见性包包B中元素的访问权限中元素的访问权限+若B引用了A,则B中的任何元素可以访问A中可见性是+的元素#若B继承了A,则B中的任何元素可以访

5、问A中可见性是#的元素-可见性是-的元素,只能被同一个包中的其它元素访问可见性与访问权限(假设包B中的元素访问包A中的元素)包的可见性有3种:可以用“+”来表示“public”;用“#”来表示“protected”;用“-”来表示“private”。102.包的表示包的表示 包内元素的可见性,标识了外部元素访问包内元素的权限。包元素的可见性112.包的表示包的表示4.包的构造型为了表示包的新特性,用构造型来描述包的新特征。包的构造型有5种:system构造型:表示正在建模的整个系统。subsystem构造型:表示正在建模的系统中某个独立的子系统。facade构造型:只是某个其它包的视图,它主要

6、用来为其它一些复杂的包提供简略视图。是包的一种扩充,它只拥有对其他包内元素的引用,本身不包含任何定义的元素模型。stub构造型:作为代理的包,它服务于某个其他包的公共内容。这通常应用于分布式系统的建模中。framework构造型:用来表示一个框架的,框架是一个领域内的应用系统提供可扩充模板的体系结构模式。123.包图中的关系包图中的关系包图中的关系包括依赖关系和泛化关系。1 依赖关系 依赖关系又可以分为4种。在依赖关系中,我们把箭尾端的包称为客户包,把箭头端的包称为提供者包。use关系:是一种默认的依赖关系,说明客户包(箭尾端的包)中的元素以某种方式使用提供者包(箭头端的包)的公共元素,也就是

7、说客户包依赖于提供者包。如果没有指明依赖类型,则默认为use关系。import关系:是最普遍的包依赖类型,说明提供者包的命名空间将被添加到客户包的命名空间中,客户包中的元素也能够访问提供者包的所有公共元素。133.包图中的关系包图中的关系access关系:如果只想使用提供者包中的元素,而不想将两个包合并,则应使用该关系。在客户包中必须使用路径名,才能访问提供者包中的所有公共元素。trace关系:想表示一个包到另一个包的历史发展,则需要使用trace关系来表示。2泛化关系 包间的泛化关系类似于类间的泛化关系,使用一般包的地方,可以用特殊包代替。在系统设计中,对某一个特定的功能,有多种实现方法。例

8、如,实现多数据库支持;实现B/S和C/S双界面。这时就需要定义一些高层次的“抽象包”和实现高层次功能的“实现包”。143.包图中的关系包图中的关系154.阅读包图阅读包图阅读包图的方法:1.了解每个包的语义,及其它包含的元素语义。2.理解包间的关系。3.找到依赖关系复杂的包,从最复杂的包开始阅读,然后依次是简单的包。164.阅读包图阅读包图阅读包图175.创建包图创建包图绘制包图的基本过程主要有三个步骤:(1)寻找包;(2)确定包之间的关系;(3)标出包内元素的可见性。绘制包图的“最小化系统间的耦合关系”的原则:最大限度减少包之间的依赖,包封装时,避免包之间的循环依赖;最小化每个包的publi

9、c、protected元素的个数,最大化每个包中private元素的个数。185.创建包图创建包图1 包的划分方法(1)识别底层包 把语义上接近并倾向于一起变化的元素放在一个包中。例如,把具有泛化关系的一组类放在一个包中。把独立的模型元素暂放在一个包中。(2)合并包 如果底层包数量过多,则合并为高层包。若底层包之间在概念上接近或具有较强的相关性,从作用上属于某项大的功能,在图上有较强的耦合度,或在分布上处于同一台处理机,则考虑把它们合并。良好包结构的关键是包内高内聚,包间低良好包结构的关键是包内高内聚,包间低耦合耦合!195.创建包图创建包图2 消除循环包依赖 应该尽量避免包模型中的循环依赖。

10、如果包A以某种方式依赖包B,并且包B以某种方式依赖包A,就应该合并这两个包,这是消除循环依赖非常有效的方法。但是经常起作用的、更好的方法是,努力分解公共元素成为第三个包C。重新计算依赖关系,以消除循环依赖。很多建模工具允许自动验证包间依赖。如果一个包中的元素访问另一个包中的元素,但两个包间却没有依赖关系,那么工具产生访问冲突列表。205.创建包图创建包图合并 分解 消除循环依赖的示例A,B包合并216.包图建模包图建模包图的主要用途:1 对成组元素建模 对成组元素进行建模可以说是包图最常见的用途,它将建模元素组织成组,然后对组进行命名,在对成组元素建模时,应遵循以下几个策略:每个包都应该是由在

11、概念上、语义上相互接近的元素组成。对于每个包,找出应标记为公共的元素,但应尽可能地少。一般使用默认的use构造型,在实现类时,才用import构造型代替use构造型。采用泛化来对特殊包进行建模。在构建包模型时,注意,在包中只标明对每个包起核心作用的元素;也可以标识每个包的文档标记值,以使其更加清晰。226.包图建模包图建模2 对体系结构建模 体系结构是一个软件系统的核心逻辑结构,常用的体系结构模式包括分层、MVC、管道、黑板、微内核等,而在应用软件中,分层和MVC是最常见的两种结构。在分层的体系结构中,最常见的划分是表示层(present)、逻辑层(business或domain)、数据层(包括数据访问、日记等)。如果采用分层体系结构,我们就把每一层用一个包来表示。236.包图建模包图建模用包分层24小结小结解释了几种常见的包图表示法,说明了包的可见性、依赖关系、泛化等概念;概要地说明了五种包的构造型。说明如何寻找包、确定包之间的依赖关系,从而绘制了出一个表明软件体系结构的包图。简要介绍了用包图表示系统体系结构的建模方法。25

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁