- 1、本文档共46页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
设计模式-1.概述
第一章 软件体系结构概述;授课教师
姓名:张伟芝
邮箱:zhangweizhi@edu2act.org
电话QQ:;课程内容
课程简介
课程内容及学习方式
第一个设计模式——单例模式
好设计的原则;课程内容
课程简介
课程内容及学习方式
第一个设计模式——单例模式
好设计的原则;;教材及参考书;考核方式
必修课
36学时、2学分
平时成绩:30%
平时表现:10%(课堂提问、课堂纪律、课堂出勤)
平时作业:20%(以4~5人为一个小组)
期末成绩:70%
考试形式:闭卷、笔试
;课程内容
课程简介
课程内容及学习方式
第一个设计模式——单例模式
好设计的原则;我们讲什么?
设计模式
体系结构模式;什么是模式?
模式是一条由三部分组成的规则。
一个特定环境、一个问题、一个解决方案。;他们之间的关系;学习的方式;;全国交通违法数据联网——环境;全国交通违法数据联网——问题
平台异构
语言异构
系统架构异构
;全国交通违法数据联网——解决方案;课程内容
课程简介
课程内容及学习方式
第一个设计模式——单例模式
好设计的原则;第一个设计模式——单例模式;第一个设计模式——单例模式
单例模式要解决的问题——独生子女
解决方案——Static;第一个设计模式——单例模式;课程内容
课程简介
课程内容及学习方式
第一个设计模式——单例模式
好设计的原则;设计正在“腐烂”的征兆
过于僵硬Rigidity
过于脆弱Fragility
不可重用性immobility
粘滞性过高viscosity
好的系统设计应该具备如下三个性质
可扩展性(Extensibility)
灵活性(Flexibility)
可插入性(Pluggability)
;面向对象设计原则;单一职责原则
高内聚性原则
避免相同的职责(也称为功能)分散到不同的类中实现。
避免一个类承担过多的职责。;单一职责原则示例
类的设计主要工作是“发现职责”并“分离职责”;遵守单一职责原则的设计模式
工厂模式
分离对象的“创建”和对象的“使用”;遵守单一职责原则的设计模式
模板方法模式
分离 “共性功能实现”和“个性扩展”;遵守单一职责原则的设计模式
命令模式
分离“命令的请求者”和“命令的实现者”;遵守单一职责原则的设计模式
代理模式
分离 “服务的请求者”和“服务的提供者”;遵守单一职责原则的体系结构模式
一个模块、子系统也应该仅有一个引起它变化的原因;开闭原则
Open(Open for extension)
模块的行为必须是开放的、支持扩展的,而不是僵化的
Closed(Closed for modification)
在对模块的功能进行扩展时,不应该影响或大规模地影响已有的程序模块
绝大部分的设计模式都符合开闭原则
抽象化是开闭原则的关键
;里氏代换原则
主要是针对继承的设计原则
子类型必须能够替换掉它们的父类型、并出现在父类能够出现的任何地方。
子类可以扩展父类的功能,但不能改变父类原有的功能。
;里氏替换原则
子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法。
子类中可以增加自己特有的方法。
当子类的方法重载父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。
当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。
;依赖倒置原则
将依赖关系倒置为依赖接口
上层模块不应该依赖于下层模块,它们共同依赖于一个抽象
父类不能依赖子类,它们都要依赖抽象类
抽象不能依赖于具体,具体应该要依赖于抽象
;接口隔离
一个类对另外一个类的依赖性应当是建立在最小的接口上
客户端不应该依赖那些它不需要的接口(方法);如何避免不良好的接口设计
用多个专门的接口,而不使用单一的总接口。
一个接口就只代表一个角色
使用接口隔离原则拆分接口时,首先必须满足单一职责原则;合成复用原则
又称为组合/聚合复用原则
尽量使用对象组合,而不是继承来达到复用目的
一个新的对象里通过关联关系(包括组合关系和聚合关系)来使用一些已有的对象
新对象通过委派调用已有对象的方法达到复用其已有功能的目的;合成复用原则
继承复用:实现简单,易于扩展,没有足够的灵活性(“白箱”复用 );合成复用原则
组合/聚合复用:耦合度相对较低,选择性地调用成员对象的操作;可以在运行时动态进行。(“黑箱”复用 );迪米特法则
要求一个软件实体应当尽可能少的与其他实体发生相互作用
又称为最少知识原则
不要和“陌生人”说话
只与你的直接朋友通信
每一个软件单位对其他的单位都只有最少的知识,而且局限于那些与本单位密切相关的软件单位;迪米特法则
某系统界面类(如Form1、Form2等类)与数据访问类(如DAO1、DAO2等类)之间的
您可能关注的文档
- 北航06-07基础物理2补考试卷与答案.doc
- 1.张继锋副总经理在惠州炼化2014年半年工作会议上发言材料.ppt
- 液压与气压传动试题与答案(四).doc
- 第8章 R×C表资料分析.ppt
- 2.2 文化塑造人生 (共31张PPT).ppt
- 统计学样卷与答案(考试专用).doc
- 复习题6-06-07基物补考卷与答案.doc
- 20040601钼系铁合金产品调研报告钢铁研究总院.pdf
- 08溶液中酸碱电子平衡习题解答.ppt
- 应用心理学专业 心理统计学作业与答案.doc
- 25上半年2期套题班-行政职业能力测验(八).docx
- 公考讲义-2025年1月时政汇总.pdf
- 2025年省考逻辑填空1000 高频实词积累+刷题早读课 讲义.pdf
- 25上半年2期套题班-行政职业能力测验(九).docx
- 2025四川事业编FB综合岗考试-综合能力测试讲义-主观题基础,案例分析题,公文写作及文章写作题.pdf
- 25上半年2期套题班-行政职业能力测验(五).docx
- 2025申论多省联考刷题课真题资料-2025国考执法课程.doc
- 2025申论多省联考刷题课真题资料-2024江西执法课程.doc
- 25上半年2期套题班-行政职业能力测验(十).docx
- 2025申论多省联考刷题课真题资料-2024福建县乡课程.doc
最近下载
- TCCIAT_0003-2019_建筑施工承插型轮扣式模板支架安全技术规程.doc
- 2024《比亚迪汽车公司成本管理存在的问题、原因及完善对策研究(数据图表论文)14000字》.docx VIP
- 外卖骑手安全培训课题.pptx VIP
- 统编人教版高中化学(必修二)第五章第二节《氮及其化合物》优质说课稿.pdf VIP
- 2022-2023学年广东省深圳中学七年级下学期期中数学试卷及答案解析.pdf
- 人教版七年级下册英语全册新质教学课件(配2025年春改版教材).pptx
- 人教版二年级下册数学《小小设计师 》(课件).pptx
- 骑手培训关于骑手的服务态度.pptx VIP
- CK5110×8/2数控高速单柱立式车床使用说明书.doc
- 生物转盘污水处理技术的研究进展及展望.doc VIP
文档评论(0)