• 设计模式


    发布说明

    其实不用设计模式并非不可以,但是用好设计模式能帮助我们更好地解决实际问题。

    设计模式天天都在用,但自己却无感知。

    本系列文章,初衷是为了记录日常经常使用的设计模式,也给学习设计模式的同学们提供参考和查阅。

    文章内容有自己的理解,也有参考网络,如有侵犯,请告知删除。

    学习设计模式的重要性

    设计模式最重要的是解耦。

    学习设计模式是如何总结经验的,把经验为自己所用。

    学设计模式也是锻炼将业务需求转换技术实现的一种非常有效的方式。

    设计模式的基石

    我们在学习设计模式之前,建议大家,一定要掌握好设计模式的几大原则,《设计模式之禅》一书中开篇就是讲的是设计原则;

    所以在本篇文章中,在这里先对设计原则做一个回顾和总结。

    设计原则 解释
    开闭原则 对扩展开放,对修改关闭。
    依赖倒置原则 通过抽象使各个类或者模块不相互影响,实现松耦合。
    单一职责原则 一个类、接口、方法只做一件事。
    接口隔离原则 尽量保证接口的纯洁性,客户端不应该依赖不需要的接口。
    迪米特法则 又叫最少知道原则,一个类对其所依赖的类知道得越少越好。
    里氏替换原则 子类可以扩展父类的功能但不能改变父类原有的功能。
    合成复用原则 尽量使用对象组合、聚合,而不使用继承关系达到代码复用的目的。

    经典框架都在用设计模式解决问题

    Spring 就是一个把设计模式用得淋漓尽致的经典框架,其实从类的命名就能看出来,我
    来一一列举:

    设计模式名称 举例
    工厂模式 BeanFactory
    装饰器模式 BeanWrapper
    代理模式 AopProxy
    委派模式 DispatcherServlet
    策略模式 HandlerMapping
    适配器模式 HandlerAdapter
    模板模式 JdbcTemplate
    观察者模式 ContextLoaderListener

    设计模式分类

    类型 名称 英文
    创建型模式 工厂模式 Factory Patterns
    单例模式 Singleton Pattern
    原型模式 Prototype Pattern
    结构型模式 适配器模式 Prototype Pattern
    装饰器模式 Decorator Pattern
    代理模式 Proxy Pattern
    行为型模式 策略模式 Strategy Pattern
    模板模式 Template Pattern
    委派模式 Delegate Pattern
    观察者模式 Observer Pattern

    注意

    需要特别声明的是,设计模式从来都不是单个设计模式独立使用的。在实际应用中,通常是多个设计模式混合使用,你中有我,我中有你。

  • 相关阅读:
    WebApi集成Grpc客户端
    【Oracle】AWR报告生成
    ora-7445 导致 ora-600 ,oracle数据库 11gR2崩溃
    .NET的并发编程(TPL编程)是什么?
    打算写一些Netty的文章了,先聊聊为什么要学习Netty
    2020实战复盘:如何从0到1搭建数据传输平台产品DTS?
    DevOps,CI,CD,自动化简单介绍
    【python刷题】二叉树递归-非递归遍历-序列-反序列化
    python正则表达式-匹配用符号分割的多个字符串
    用 Flutter 搭建标签+导航框架
  • 原文地址:https://www.cnblogs.com/eamonzzz/p/11610891.html
Copyright © 2020-2023  润新知