- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章软件体系结构及软件设计模式概述 本章主要内容 软件体系结构概述 典型软件体系结构分析 MVC框架模式介绍 软件设计模式概述 软件体系结构 概念 作用 软件体系结构风格 常见的体系结构风格 数据流风格:批处理序列;管道/过滤器 调用/返回风格:主程序/子程序;面向对象风格;层次结构 独立构件风格:进程通讯;事件系统 虚拟机风格:解释器;基于规则的系统 仓库风格:数据库系统;超文本系统;黑板系统 管道和过滤器 仓库系统及知识库 浏览器/服务器风格 层次体系结构 层次风格特点 每层为上一层提供服务,使用下一层的服务,只能见到与自己邻接的层 适当时候(必不得已的时候),可以允许一定的越层操作 大的问题分解为若干个渐进的小问题,逐步解决,隐藏了很多复杂度 修改一层,最多影响两层,而通常只能影响上层。接口稳固,则谁都不影响 层次风格特点 上层必须知道下层的身份,不能调整层次之间的顺序 存在的问题: 并不是每个系统都可以很容易地划分为层次的模式 性能与抽象的程度相关,但是很难找到一个合适的、正确的层次抽象方法 三层体系结构 三层体系结构 CS三层体系结构特点: 服务器和客户可以完全异构,只要遵从统一的网络协议 客户必须知道服务器的地址 客户之间的信息传递要经过服务器中转 可以扩展出客户之间的直接通信机制 三层体系结构 BS三层体系结构特点: 使用标准http/https协议,一致性好 必须由客户主动连接服务器 客户端有http浏览器即可 为增强功能,往往还需要安装flash、jvm及一些专用插件 服务器的负荷大,客户机的资源浪费 三层体系结构 CS/BS混合结构 综合了两者的优点 缺点? 体系结构设计思想 分层 分解 风格 几个术语 架构、框架、模式是一种从大到小的关系,也是一种组合关系 架构一般是描述系统各个部分的骨架,要求是稳定的、容变的 框架比较小,很多表现为中间件,框架一般是从技术上的横切面去解决实际应用问题 模式则更小了,越小越灵活,可重用的范围更广 几个术语 构件是可复用的软件组成成份,可被用来构造其他软件 组件是封装好的对象,如控件等 中间件是基于分布式处理的软件,是一种独立的系统软件或服务程序 一个架构有可能应用了多个框架,而一个框架可能使用了多个模式 MVC框架模式 概念 作用 典型的MVC模式 MVC框架模式 最早由Trygve Reenskaug提出的用于SmallTalk的MVC模式 MVC框架模式 常用于Web框架和GUI框架的MVC模式 MVC框架模式 GUI框架的MVC模式 MVC框架模式 基于UI扩展的MVC模式 MVC框架模式 泛UI层UI-MVC模式 软件体系结构设计总结 体系结构设计主要是从较高的抽象层次来对软件系统进行设计 体系结构设计强调系统如何分解、分层,各模块间的关系以及模块间如何相互作用 没有一种完全通用的体系结构风格,不同体系结构风格会对整个系统的质量产生不同影响 软件设计模式 设计模式:描述了在面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案 设计模式捕获了随时间进化与发展的问题的求解方法,而这些都来自软件开发者为了设计出灵活可复用的软件而长时间进行的艰苦努力。设计模式捕获了这些解决方案,并用简洁易用的方式表达出来。 软件设计模式 设计模式并不要求使用独特的语言特性,也不需要特殊的编程技巧和算法,所有的模式均可以用标准的面向对象语言实现 有时设计模式的解法需要多费一些功夫,但是为了增加软件的灵活性和可复用性,多做些工作是值得的 软件设计模式 一旦你理解了设计模式并且有了一种“Aha!”(而不是“Huh?”)的应用经验和体验后,你将用一种非同寻常的方式思考面向对象设计 你将拥有一种深刻的洞察力,可以帮助你设计出更加灵活的、模块化的、可复用的和易理解的软件—这也是面向对象技术的最大优势所在 软件设计模式 所有结构良好的面向对象软件体系结构中都包含了许多模式。模式在构造复杂系统时的重要性早已在多个领域中被认可 设计模式为开发人员提供了一种学习和使用专家设计经验的有效途径。它能使所生成的系统体系结构更加精巧、简洁和易于理解 软件设计模式分类 基本模式 创建模式 集合模式 结构模式 行为模式 并发模式 基本模式 接口、抽象父类 私有方法 存取器方法 常量数据管理器 不便对象 管程 创建模式 工厂方法 抽象工厂 单例 原型 构造者 集合模式 合成 迭代子 享元 访问者 结构模式 装饰器 适配器 责任链 外观 代理 桥接 对象缓存器 行为模式 命令 调停者 备忘录 观察者 解释器 模板方法 策略 并发模式 临界区 协同锁 安全挂起 读写锁 设计模式学习建议 有一些提示和鼓励:第一次阅读此书时你可能不会完全理解它,但不必着急,我们在起初编写这本
您可能关注的文档
- 广州白云国际机场迁建工程乐云.ppt
- 意识障碍中山大学附属第二医院神经科王艺东.ppt
- 振动过程的数值模拟在金属凝固中应用的研究进展.ppt
- 推动企业工会建设激发企业工会活力.ppt
- 改变质量对地月系的影响.ppt
- 整式的乘法与因式分解完全平方公式.ppt
- 新高等学校财务制度讲解.ppt
- 机构可动和具有确定运动的条件.ppt
- 枣皮优质高产栽培技术.ppt
- 查询与统计排序与索引.ppt
- 辽宁省阜新市海州区2025届九年级下学期中考二模数学试卷(含解析).docx
- 最新2025年安全知识竞赛题多题(+答案).docx
- 最新2025新入职员工安全教育培训试题及答案(练).docx
- 最新2025年初级社工考试题库含答案.docx
- 最新2025年医院感染预防与控制知识模拟试题及答案(2025年).docx
- 《书的故事》阅读理解及答案(推荐).docx
- 最新2024年-2025员工三级安全培训考试题及答案.docx
- 最新2025年员工三级安全培训考试题(+答案)(各地考试测试题).docx
- 《午夜之门》阅读测试题及答案(推荐).docx
- 2025415全民国家安全教育日知识测试竞赛题库(+答案)【推荐】.docx
文档评论(0)