第4章面向对象的设计-1.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4.1 面向对象设计概述 4.2 软件设计的体系结构 4.3 面向对象设计的软件体系结构 4.4 对象设计 4.5 数据管理的设计 4.6 人机交互的设计 4.7 任务管理的设计 4.1.3 面向对象的设计方法 分析阶段的制品 4.1.3 面向对象的两种设计方法 4.2.2 为什么要提出“软件体系结构” “体系结构”一词起源于建筑学 如何使用基本的建筑模块构造一座完整的建筑? 包含两个因素: 基本的建筑模块:砖、瓦、灰、沙、石、预制梁、柱、屋面板… 建筑模块之间的粘接关系:如何把这些 “砖、瓦、灰、沙、石、预制梁、柱、屋面板”有机的组合起来形成整体建筑? (1) 计算机硬件系统的“体系结构” 如何将设备组装起来形成完整的计算机硬件系统? “体系结构”的共性 一组基本的构成要素—— 构件 要素之间的连接关系—— 连接件 要素连接之后形成拓扑结构—— 物理分布 作用于要素或连接关系上的限制条件——约束 质量——性能 (2) “软件体系结构”(Software Architecture) 提供了对软件系统的结构、行为和属性的抽象。反映系统开发中具有重要影响的设计决策,便于各种人员的交流,据此开发的系统能完成系统既定的功能和性能需求。 构件(Component) 构件是具有某种功能的可复用的软件结构单元,表示了系统中主要的计算元素和数据存储。 接口(Interface) 构件作为一个封装的实体,只能通过其接口与外部环境交互。如芯片的管脚。 内部结构则被隐藏起来(Black-box)。 一个构件至少有一个接口。 一个构件可以提供多重接口:接不同的管脚,实现不同的功能。 构件接口与构件实现严格分开。 服务(Service) 构件被看作一个“黑盒”(Black Box),其内部具体的实现机制被封装和隐藏起来。 构件的功能以服务(Service)的形式体现出来,并通过接口向外发布,进而产生与其它构件之间的关联。 连接件(Connector) 连接件(Connector):表示构件之间的交互并实现构件之间的连接,如: 管道(pipe) 过程调用(procedure call) 事件广播(event broadcast) 客户机-服务器(client-server) 数据库连接(SQL) 连接件也可看作一类特殊的构件,区别在于: 一般构件是软件功能设计和实现的承载体; 连接件是负责完成构件之间信息交换和行为联系的专用构件。 连接的协议(Protocol) 协议(Protocol)是连接的规约(Specification)。 连接的种类 从连接目的看: 操作/过程调用; 控制/事件/消息发送; 数据传输; 除了连接机制/协议的实现难易之外,影响连接实现复杂性的因素之一是“有无连接的返回信息和返回的时间”,分为: 同步 (Synchronous) 异步 (Asynchronous) 4.2.3 体系结构风格 (1) 主程序-子程序结构 是结构化程序设计的一种典型风格。从功能的观点设计系统,通过逐步分解和逐步细化,得到系统体系结构。 现实世界里邮政系统 计算机操作系统的层次结构 两层C/S 三层C/S 多层C/S C/S+B/S 混合体系结构 为了克服C/S与B/S各自的缺点,发挥各自的优点,在实际 应用中,通常将二者结合起来。 企业内部用户通过局域网直接访问数据库服务器 C/S结构; 交互性增强; 数据查询与修改的响应速度高。 企业外部用户通过Internet访问Web服务器/应用 服务器 B/S结构; 用户不直接访问数据,数据安全。 C/S+B/S 模型 4.3 面向对象设计的软件体系结构 4.3.1 逻辑结构 将功能合理的进行分组。 逻辑构架 包图是维护和控制系统总体结构的重要建模工具; 包图方便理解和处理整个模型。 顶层领域概念包 核心包 支付包(现金、信用卡、支票支付) 找出潜在的抽象 (3) 包的引入与访问关系 引入(import) 允许一个包中的元素可以单向访问另一包中的元素 输出(export) 包的公共部分 引入和访问依赖 不是可传递的 (4) 包图的设计 对概念和语义上相互接近的元素所定义的组块放到一个包中 前3个原则,包的内聚性原则: 是用来指导如何把类划分到包中的。 重用发布等价原则、 共同重用原则、 共同封闭原则。 后3个原则,包的耦合性原则: 是用来处理包之间的相互关系的。 无环依赖原则、 稳定依赖原则、 稳定抽象原则。 共同重用原则 一个包中的所有类应该是共同重用的。 如果重用了包中的一个类,那么就要重用包中的所有类。这个原

文档评论(0)

天马行空 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档