【设计模式】设计模式学习线路与总结

设计模式主要是为了改善代码质量,对代码的重用、解耦以及重构给了最佳实践,如下图是我们在掌握设计模式过程中需要掌握和思考的内容概览。
在这里插入图片描述

一. 设计原则与思想

  1. 面向对象编程基础

掌握类、对象、继承、多态等基本概念。

【《设计模式之美》】如何取舍继承与组合

【设计模式之美】面向对象分析方法论与实现(一):需求分析方法论

【设计模式之美】面向对象分析方法论与实现(二):需求到接口实现的方法论

 

  1. 设计原则与方法论

熟悉SOLID原则(单一职责、开闭原则、里氏替换原则、接口隔离原则、依赖倒置原则)及其在设计模式中的应用。

【设计模式之美】SOLID 原则之一:怎么才算是单一原则、如何取舍单一原则

【设计模式之美】SOLID 原则之二:开闭原则方法论、开闭原则如何取舍

【设计模式之美】SOLID 原则之三:里式替换(LSP)跟多态有何区别?如何理解LSP中子类遵守父类的约定

【设计模式之美】 SOLID 原则之四:接口隔离原则有哪三种应用?原则中的“接口”该如何理解?

【设计模式之美】 SOLID 原则之五:依赖反转原则:将代码执行流程交给框架

 

3. 规范与重构

【设计模式之美】重构一:重构定义、单元测试保证重构正确性

【设计模式之美】重构二:重构提高代码可测试性、mock替换外部服务

【设计模式之美】重构(三)之解耦方法论:如何通过封装、抽象、模块化、中间层等解耦代码?
 

【设计模式之美】快速地改善代码质量的几条编程规范(上)

【设计模式之美】改善代码质量之:代码可读性
 

二. 设计模式与范式

  • 创建型模式,如工厂模式、单例模式、建造者模式。

  • 结构型模式,如适配器模式、装饰器模式、代理模式。

【设计模式】继承的替代方式:装饰者模式-动态丰富对象功能,而不是实现大量的继承实例

  • 行为型模式,如策略模式、观察者模式、模板方法模式。

【设计模式之美】策略模式方法论:解耦策略的定义、创建和使用

【设计模式之美】策略模式实践:不同大小(采用不同的策略)文件进行排序

 

三. 设计模式进阶

  1. 深入学习进阶设计模式
  • 并发模式,如生产者-消费者模式、读写锁模式。
  • 学习并实现其他高级模式,如享元模式、访问者模式、备忘录模式。
  1. 学习反模式及其避免
    理解反模式(如过度设计、不足设计等)及其对软件设计的影响。

  2. 领域驱动设计(DDD)与设计模式的结合
    理解如何将领域驱动设计中的战略设计与设计模式结合,优化复杂系统的设计。

 

四. 项目实战

【设计模式-2】策略模式 - 避免冗余的if-else判断。数据库迁移框架、flink 类型转换框架例子对策略模式的使用

 

相关推荐

  1. 设计模式学习总结

    2024-07-10 08:34:04       57 阅读
  2. 设计模式总结

    2024-07-10 08:34:04       65 阅读
  3. 设计模式简要总结

    2024-07-10 08:34:04       44 阅读
  4. 设计模式总结(四)

    2024-07-10 08:34:04       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-10 08:34:04       99 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-10 08:34:04       107 阅读
  3. 在Django里面运行非项目文件

    2024-07-10 08:34:04       90 阅读
  4. Python语言-面向对象

    2024-07-10 08:34:04       98 阅读

热门阅读

  1. Electron 简单搭建项目

    2024-07-10 08:34:04       35 阅读
  2. adb 常用的命令总结

    2024-07-10 08:34:04       30 阅读
  3. gcc: options: -specs

    2024-07-10 08:34:04       29 阅读
  4. Python题解Leetcode Hot 100之栈和堆

    2024-07-10 08:34:04       30 阅读
  5. docker容器如何与本地配置文件关联

    2024-07-10 08:34:04       37 阅读
  6. SQL 字段类型-上

    2024-07-10 08:34:04       35 阅读
  7. C++ 入门04:数组与字符串

    2024-07-10 08:34:04       24 阅读
  8. 简谈设计模式之原型模式

    2024-07-10 08:34:04       31 阅读
  9. GPT带我学-设计模式-13策略模式

    2024-07-10 08:34:04       29 阅读
  10. 写一个字符设备的驱动步骤

    2024-07-10 08:34:04       30 阅读