设计模式理论

设计模式
底层思维:向下,如何把握机器底层从微观理解对象构造
语言构造、编译转换、内存模型、运行时机制
抽象思维:向上,如何将我们的周围世界抽象为程序代码
面向对象、组件的封装、设计模式、架构模式
软件设计的金科玉律:复用性
一、面向对象设计:

重新认识面向对象
隔离变化:将变化所带来的影响减为最小
各司其职:由于需求的变化导致的增添类型不应该影响原来的实现
对象:从语言层面来看,对象封装了代码和接口
从规格层面,对象是一系列可被使用的公共接口
从概念层面,对象是某种拥有责任的抽象
二、设计原则:
ps:设计原则的重要性大于设计模式
依赖倒置原则:高层模块稳定不应该依赖于低层模块,二者应该依赖于抽象
抽象不应该依赖于具体细节,具体细节应该依赖于抽象
理解:你爸爸不能因为你的变化而变化,你两应该都依赖于你妈妈,稳定的两个点是你的爸爸妈妈,你的妈妈作为抽象,你作为具体实现是可以发生变化的(第一句话)
你妈妈也不能因为你的变化而变化,而时你依赖于你妈妈的变化而变化。(第二句话)
开闭原则:对扩展开放,对更改关闭,类模块是可以扩展的,但是不可以修改。
单一职责原则:一个类应该仅有一个引起它变化的原因。变化的方向隐含着类的责任
里氏替换原则:子类必须能够替换他们的基类(IS-A)将他们的基类完全表达
接口隔离原则:不应该强迫客户程序依赖他们不应的方法,接口应该小而完备
优先使用对象组合而不是类继承:继承关系应该是一种类属关系。对象组合就是(定义两个类 AB,在B内部放置一个类A的对象指针或对象)继承耦合度相对较高,而对象的组合耦合度低
封装变化点:使用封装来创建对象之间的分界点
针对接口编程而不是实现编程
三、设计模式分类
组件协作、单一职责、对象创建、对象性能、接口隔离、状态变化、数据结构、行为变化、领域问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值