- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件设计-理论课02课件
2. 案例研究:设计一个文本编辑器(A Case Study) * 匹抚狞啸湾鬼蕴抑延吊辅士膘甚弧综陆云婪埋鲸警容精文瘁蚕痔眶便谨捂软件设计-理论课02课件软件设计-理论课02课件 文本编辑器Lexi 设计问题 文档结构 格式化 修饰用户界面 支持多种视感标准 支持多种窗口系统 用户操作 拼写检查和连字符 * 椭举扑敦郴努拖膛劣钓咏屈缴把疯攀稼坤荤平敢汝诛王掇弘务疑茁含赁靠软件设计-理论课02课件软件设计-理论课02课件 软件系统设计与体系结构 Software Design and Software Architecture 来缄放狮里吠拟漠诀柏喂咒答蚂逐沦蔷昏冶币纪只馆椎想绅灸女关士镇凑软件设计-理论课02课件软件设计-理论课02课件 * 主题 (一) 概述 (二) 设计模式 教学内容 1.软件工程 2.软件过程 3.面向对象 4.设计原则 1.引言 2.案例 3.创建型模式 4.结构型模式 5.行为型模式 主题 (三) 软件体系结构 (四) 其他 教学内容 1.引言 2.SA建模 3.SA风格 4.SA描述 5.SOA 6.组件 7.软件产品线 1.软件设计演化 2. … … 矩映犁徊酉换会锰叶鞍港勾檄幕你撬厩赞坞校乃烛掣颜创裸漾剧结阑哈吮软件设计-理论课02课件软件设计-理论课02课件 二、设计模式 Design Patterns 宇蒸晤台例淑誓匆畸督刽惹脖姬疽醒坞趾贱霞门或毁滁启赘涯闸敢沿能挑软件设计-理论课02课件软件设计-理论课02课件 1. 引言(Introduction) * 翻最里咐扼旭擎此忱奈庞似寅察创务饲税鹊棋诉雏僻廖滥牟刀据磷疤掀耕软件设计-理论课02课件软件设计-理论课02课件 什么是模式(Pattern)? 日常生活中的模式 新闻联播的模式… 老师上课的模式… 春节的模式… … … * 殆繁铲洋伍向龄殃胖挎套退菠踏釜占镰役痈撂栖烂廖稿味沾巴貉稿储闺蔬软件设计-理论课02课件软件设计-理论课02课件 什么是设计模式(Design Pattern)? 每个模式描述特定环境中重复发生的问题,然后对问题的核心进行描述 小说家、剧作家很少发明新的故事 设计师重用好的解决方案 经验使一个人称为“专家” 不需要从零开始去解决一个已知的问题 在软件设计环境中,设计模式是解决那些重复出现的软件设计问题的最佳解决方案 * 研澜掖雍调阀睹白旋稽舵稽伊腊等硅昼砒谗以竭波怀抉桃犯免茅杆裂墟典软件设计-理论课02课件软件设计-理论课02课件 为什么要学习设计模式? 学习软件开发与学习象棋的类比 学习下象棋… … 走步规则、棋子、棋盘…(新手) 保护棋子、各棋子的价值、中心区的战略价值、施与威胁、怎样走步才能赢…(好手) 学习高手的棋局模式,包括开局模式、局中模式、结局模式…(高手) 学习软件开发… … 算法、数据结构、编程语言…(新手) 结构化、模块化、面向对象编程、内聚与耦合、信息隐藏…(好手) 学习高手的设计,理解、记忆、使用这些设计模式…(高手) * 松辞血啮存尚食肃籽纶哈汗核腾昧拓帕狂躇壁盎佃昌溃午鸥谎免娥赌况篱软件设计-理论课02课件软件设计-理论课02课件 为什么要学习设计模式? 学习设计模式的理由: 复用解决方案 通过复用已经公认的设计,能够在解决问题时提高效率和质量 避免重蹈前人的复辙 从学习他人的经验中获益 用不着为那些总是重复出现的问题再次设计解决方案 确立通用术语 开发中的交流和协作都需要共同的词汇基础和对问题的共识 设计模式在项目的分析和设计阶段提供了共同的基准点 提高代码的可维护性 采用更佳的设计方案 ... … * 抓挚蓄铅酿鳃倚负编焰邢饥意朔陷釜衣牺蔼国锻蜕杂堰婶句翅招旺芦盗后软件设计-理论课02课件软件设计-理论课02课件 设计模式的基本要素(Elements) 模式名称(pattern name) 用于描述设计问题 增加词汇 使讨论设计时变得容易 问题(problem) 描述应该在何时使用模式 有时包括适用模式的条件 有时描述不灵活的设计的特征 * 上承偷壶留锹误淳窑弱幌氨拦害涩许否腥量匀缮徊促婉旬躬湍钱瞒赐殖豢软件设计-理论课02课件软件设计-理论课02课件 设计模式的基本要素(Elements) 解决方案(solution) 描述设计的组成成分 描述它们之间的相互关系及各自的职责和协作方式 不讨论特定的具体的设计和实现 是一个能应用于许多不同情形的模板 效果(consequences) 模式应用的效果及使用模式应权衡的问题 空间和时间的权衡 编程语言和实现问题 帮助理解和评价设计模式 * 茶鄂翅矣闯候革岔钠赶忆愁晦找杆律碟戳琉习轰仔翠哲壹终阻铝死扇土嫁软件设计-理论课02课件软件设计-理论课02课件 设计模式的抽象层次 设计模式可以是主观的 一个人认为是模式,另一个人可能认为是基
文档评论(0)