设计模式学习01-简介

设计模式是什么

设计模式是指在软件开发中,经过验证的,用于解决在特定环境下,重复出现的,特定问题的解决方案。是通过满足设计原则后,慢慢迭代出来的。对于既有稳定点,又有变化点的问题才需要使用设计模式。我们希望修改少量的代码,就可以适应需求的变化。《Design Pattern》中打了一个比方,在一个整洁的房间,有一只好动的猫,如何保证房间的整洁?设计模式做的就是把猫关在笼子里这件事。

面向对象

封装、继承、多态
封装 隐藏实现细节,实现模块化
继承 无需修改原有类的情况下通过继承实现对功能的扩展
多态 静态多态(函数重载)动态多态(虚函数重写)

设计原则

开放 封闭 对扩展开放,对修改封闭(封装)
依赖倒置 高层不应该依赖底层,两者都应该依赖抽象;抽象不应该依赖具体,具体应该依赖抽象。
面向接口 面向接口编程,而不是面向具体。
封装变化点 把需求中变化的部分给封装起来(把猫关在笼子里)。
单一职责原则 一个类尽量就做一件事。
里氏替换 子类能够完全替换父类,做父类做的事情
接口隔离 使用多个互相没有关系的接口,比使用单个接口(多个接口方法集合到一个的接口)要好。
组合优于继承 多用组合少用继承
最小知道原则 迪米特法则,不和陌生的类打交道。

设计模式

创建型模式(5)
工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式
结构型模式(7)
适配器模式、装饰者模式、代理模式、外观模式、桥接模式、组合模式、享元模式
行为型模式(11)
策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值