版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象设计原则面向对象设计原则1面向对象设计,为什么?变化是复用的天敌!面向对象设计最大的优势在于:抵御变化!2面向对象设计,为什么?变化是复用的天敌!抵御变化!2重新认识面向对象理解隔离变化从宏观层面来看,面向对象的构建方式更能适应软件的变化,能将变化所带来的影响减为最小各司其职从微观层面来看,面向对象的方式更强调各个类的“责任”由于需求变化导致的新增类型不应该影响原来类型的实现——是所谓各负其责对象是什么?从语言实现层面来看,对象封装了代码和数据。从规格层面讲,对象是一系列可被使用的公共接口。从概念层面讲,对象是某种拥有责任的抽象。3重新认识面向对象理解隔离变化3面向对象设计原则(1)依赖倒置原则(DIP)高层模块(稳定)不应该依赖于低层模块(变化),二者都应该依赖于抽象(稳定)
。抽象(稳定)不应该依赖于实现细节(变化)
,实现细节应该依赖于抽象(稳定)。4面向对象设计原则(1)依赖倒置原则(DIP)4面向对象设计原则(2)开放封闭原则(OCP)对扩展开放,对更改封闭。类模块应该是可扩展的,但是不可修改。5面向对象设计原则(2)开放封闭原则(OCP)5面向对象设计原则(3)单一职责原则(SRP)一个类应该仅有一个引起它变化的原因。变化的方向隐含着类的责任。6面向对象设计原则(3)单一职责原则(SRP)6面向对象设计原则(4)Liskov
替换原则(LSP)子类必须能够替换它们的基类(IS-A)。继承表达类型抽象。7面向对象设计原则(4)Liskov替换原则(LSP)7面向对象设计原则(5)接口隔离原则(ISP)不应该强迫客户程序依赖它们不用的方法。接口应该小而完备。8面向对象设计原则(5)接口隔离原则(ISP)8面向对象设计原则(6)优先使用对象组合,而不是类继承类继承通常为“白箱复用”,对象组合通常为“黑箱复用”。继承在某种程度上破坏了封装性,子类父类耦合度高。而对象组合则只要求被组合的对象具有良好定义的接口,耦合度低。9面向对象设计原则(6)优先使用对象组合,而不是类继承9面向对象设计原则(7)封装变化点使用封装来创建对象之间的分界层,让设计者可以在分界层的一侧进行修改,而不会对另一侧产生不良的影响,从而实现层次间的松耦合。10面向对象设计原则(7)封装变化点10面向对象设计原则(8)针对接口编程,而不是针对实现编程不将变量类型声明为某个特定的具体类,而是声明为某个接口。客户程序无需获知对象的具体类型,只需要知道对象所具有的接口。减少系统中各部分的依赖关系,从而实现“高内聚、松耦合”的类型设计方案。11面向对象设计原则(8)针对接口编程,而不是针对实现编程11面向接口设计产业强盛的标志接口标准化!12面向接口设计产业强盛的标志接口标准化!12以史为鉴(1)秦为什么能够统一六国?据史书记载和考古发现,秦的兵器不论东西南北,出土地点都有统一的标准,包括剑,戈,弩,
甚至弩机,弩体,箭头都是一样的.
而其他六国则不是.13以史为鉴(1)秦为什么能够统一六国?13以史为鉴(2)毕升的活字印刷为什么成为四大发明,推动了人类文明的前进?毕升之前的雕版印刷将字刻死在木板或石板上,每次印刷不同文章,要刻不同的版。而毕升发明的活字印刷首先在板上刻好字格,然后再刻单独的字模。印刷时,将活的字模“按需索取”放在字格中,不同的排列方法产生不同的文章,而不必重新刻版。14以史为鉴(2)毕升的活字印刷为什么成为四大发明,推动了人类将设计原则提升为设计经验1.
设计习语
Design
IdiomsDesign
Idioms
描述与特定编程语言相关的低层模式,技巧,惯用法。2.
设计模式
Design
PatternsDesign
Patterns主要描述的是“类与相互通信的对象之间的组织关系,包括它们的角色、职责、协作方式等方面。3.
架构模式
Architectural
PatternsArchitecturalP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2022年西南民族大学汉语国际教育专业《现代汉语》期末试卷A(有答案)
- 管理学电子课件
- 广东省深圳市2026年七年级上学期期中调研数学试题附答案
- 剑麻纤维生产工技能安全模拟考核试卷含答案
- 高压成套设备装配配线工岗中沟通技巧考核试卷含答案
- 氯甲烷生产工岗中综合应用考核试卷含答案
- 消防设施操作员岗位综合技能考核试卷含答案
- 2025年职业技能鉴定考试(动物疫病防治员高级/三级)历年参考题库含答案详解
- 2025年质量知识问答题库及答案(可下载)
- 2025年中国注册心理咨询师考试模拟题集与答案
- GB/T 18474-2026交联聚乙烯(PE-X)管材与管件交联度的试验方法
- CSCO神经内分泌肿瘤诊疗指南(2026版)
- 2026年高考广东卷化学高考真题(含答案)
- 科特迪瓦可可产业投资前景与产业链深度研究
- (2026版)《超龄劳动者基本权益保障暂行规定》解读课件
- 计算机组装与维护(第2版)全套课件
- QC/T 1238-2025燃料电池发动机用空气滤清器
- 体育场地监理实施细则
- 领导干部任前应知应会党内法规和法律知识考试题库及答案(2025年度)
- 卷面书写规范与答题技巧分析报告
- 超声内镜引导胃肠吻合术的临床应用进展2026
评论
0/150
提交评论