别院牧志知识库 别院牧志知识库
首页
  • 基础

    • 全栈之路
    • 😎Awesome资源
  • 进阶

    • Python 工匠系列
    • 高阶知识点
  • 指南教程

    • Socket 编程
    • 异步编程
    • PEP 系列
  • 面试

    • Python 面试题
    • 2025 面试记录
    • 2022 面试记录
    • 2021 面试记录
    • 2020 面试记录
    • 2019 面试记录
    • 数据库索引原理
  • 基金

    • 基金知识
    • 基金经理
  • 细读经典

    • 德隆-三个知道
    • 孔曼子-摊大饼理论
    • 配置者说-躺赢之路
    • 资水-建立自己的投资体系
    • 反脆弱
  • Git 参考手册
  • 提问的智慧
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
首页
  • 基础

    • 全栈之路
    • 😎Awesome资源
  • 进阶

    • Python 工匠系列
    • 高阶知识点
  • 指南教程

    • Socket 编程
    • 异步编程
    • PEP 系列
  • 面试

    • Python 面试题
    • 2025 面试记录
    • 2022 面试记录
    • 2021 面试记录
    • 2020 面试记录
    • 2019 面试记录
    • 数据库索引原理
  • 基金

    • 基金知识
    • 基金经理
  • 细读经典

    • 德隆-三个知道
    • 孔曼子-摊大饼理论
    • 配置者说-躺赢之路
    • 资水-建立自己的投资体系
    • 反脆弱
  • Git 参考手册
  • 提问的智慧
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 辨析

  • Sockets编程

  • Django

  • stackoverflow

  • Flask

  • 全栈之路

  • 面试

  • 代码片段

  • 异步编程

  • 😎Awesome资源

  • PEP

  • Python工匠系列

  • 高阶知识点

  • Python 学习资源待整理
  • 设计模式

    • Python 设计模式
    • 装饰器模式
    • 抽象工厂模式
    • 建造者模式/生成器模式
    • 原型模式
    • 单例模式
    • 设计模式(2)——工厂方法模式
    • 设计模式(3)——抽象工厂模式
    • 设计模式(4)——模板方法模式
    • 设计模式(5)——代理模式
    • 设计模式(6)——建造者模式
    • 设计模式(7)——策略模式
    • 设计模式(8)——命令模式
    • 设计模式(9)——原型模式
    • 设计模式(10)——中介者模式
    • 设计模式(11)——责任链模式
    • 设计模式(12)——装饰器模式
    • 设计模式(13)——适配器模式
    • 设计模式(14)——迭代器模式
    • 设计模式(15)——观察者模式
    • 设计模式(16)——外观模式
    • 设计模式(17)——状态模式
    • 设计模式(18)——桥接模式
    • 设计模式(19)——享元模式
    • 设计模式(20)——解释器模式
    • 设计模式(21)——组合模式
    • 设计模式(23)——备忘录模式
    • Python 全栈之路系列之单例设计模式
    • 设计模式(22)——访问者模式
    • 工厂方法模式
    • Python 设计模式资源收集
      • 学习路线
        • 概念的理解
        • 实际的运用
        • 最后的提醒
      • 资源
      • 观点
      • 代码
      • 文档
  • 好“艹蛋”的 Python 呀!
  • FIFO | 待学清单📝
  • pip 安装及使用
  • 数据分析

  • 源码阅读计划

  • OOP

  • 关于 python 中的 setup.py
  • 并行分布式框架 Celery
  • 七种武器,让你的代码提高可维护性
  • 使用 pdb 调试 Python 代码
  • 每周一个 Python 标准库
  • 🐍Python
  • 设计模式
佚名
2020-06-08
目录

Python 设计模式资源收集

# 学习路线

设计模式的学习分两步走:先理解概念,掌握面向对象的开发守则;再将这些概念运用到实际项目中。

# 概念的理解

这步看似简单,实际则不然。譬如单例模式,就是一个类只生成一个实例。这种做法有什么好处,有没有类似的实际案例。能不能自己实现双例模式,三例模式呢?

书中写的是非常标准的单例模式,实际开发中不一定非常标准,但可能会为了方便写的很简洁,你需要知道缺陷。

# 实际的运用

这个就需要进行大量的练习和经验了。在构建中型项目时,如何熟练的编写和运用非常考验开发者的水平。

有些时候,一些模块既可以用模板模式,也可以用策略模式,但最终以哪个为主模式就需要根据实际情况了。

还有一种情况就是多种模式混合使用,这种情况下没有足够的功底就很难有效使用了。比如策略加模板是我经常使用的;还有经常用的状态模式加工厂模式。

有些模式只会用一半,就是用某些模式的思路来实现,你根本看不出什么模式。甚至根据实际情况,结合面对对象的基本原则,还需要自己发明模式。

# 最后的提醒

学习设计模式,先知道基本概念,理解一些比较容易的模式,先用起来。慢慢找到感觉,自己从一个架构师的角度来考虑。

总之,学习设计模式需要一个漫长的过程。

ref : 想学习设计模式,是入手《Head First 设计模式》,还是入手《大话设计模式》呢? - 山猫的回答 - 知乎 (opens new window)

# 资源

设计模式:可复用面向对象软件的基础

🚀经典书籍——四人帮

- name: 设计模式:可复用面向对象软件的基础
  desc: 🚀经典书籍——四人帮
  link: https://share.weiyun.com/vxuu9mAA
  bgColor: '#DFEEE7'
  textColor: '#2A3344'
1
2
3
4
5

Python Design Patterns (opens new window)

faif/python-patterns: A collection of design patterns/idioms in Python (opens new window)

常用设计模式有哪些? (opens new window)

wklken/py-patterns: 设计模式的 python 实现 (opens new window)

interview/code/design_pattern at master · DasyDong/interview (opens new window)

cundi/Mastering.Python.Design.Patterns: 《精通 Python 设计模式》2015 年 1 月 (opens new window)

工厂模式 - Python 设计模式™ (opens new window)

Python 系列干货之——Python 与设计模式 - 知乎 (opens new window)

用 python 实现设计模式 — python-web-guide 0.1 文档 (opens new window)

The Pattern Concept — Python 3 Patterns, Recipes and Idioms (opens new window)

《精通 Python 设计模式》cundi/Mastering.Python.Design.Patterns: 《精通 Python 设计模式》 (opens new window)

# 观点

Python 里没有接口,如何写设计模式? - 知乎 (opens new window)

为何大量设计模式在动态语言中不适用? - 知乎 (opens new window)

SOLID 原则、设计模式适用于 Python 语言吗 - xybaby - 博客园 (opens new window)

# 代码

Meteorix/python-design-patterns: Python 设计模式 (opens new window)

# 文档

Design Patterns in Python (opens new window)

编辑 (opens new window)
#TODO#设计模式
上次更新: 2024-07-23, 01:00:43
工厂方法模式
好“艹蛋”的 Python 呀!

← 工厂方法模式 好“艹蛋”的 Python 呀!→

最近更新
01
2025 面试记录
05-28
02
提升沟通亲和力的实用策略
03-26
03
工作
07-15
更多文章>
Theme by Vdoing | Copyright © 2019-2025 IMOYAO | 别院牧志
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式