# Python Design Patterns（設計模式）大補帖

**URL:** https://vip.studycamp.tw/t/python-design-patterns%EF%BC%88%E8%A8%AD%E8%A8%88%E6%A8%A1%E5%BC%8F%EF%BC%89%E5%A4%A7%E8%A3%9C%E5%B8%96/6212
**Category:** Design Patterns
**Created:** [2023年七月3日 01:13 UTC](https://vip.studycamp.tw/t/python-design-patterns%EF%BC%88%E8%A8%AD%E8%A8%88%E6%A8%A1%E5%BC%8F%EF%BC%89%E5%A4%A7%E8%A3%9C%E5%B8%96/6212 "2023-07-03T01:13:55Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![sky](https://vip.studycamp.tw/user_avatar/vip.studycamp.tw/sky/32/8098_2.png) [@sky](https://vip.studycamp.tw/u/sky)
#### Post date: [2023年七月3日 01:13 UTC](https://vip.studycamp.tw/t/python-design-patterns%EF%BC%88%E8%A8%AD%E8%A8%88%E6%A8%A1%E5%BC%8F%EF%BC%89%E5%A4%A7%E8%A3%9C%E5%B8%96/6212/1 "2023-07-03T01:13:55Z")

</div>

這篇文章主要在介紹設計模式（Design Patterns）的相關學習資源。

第一部分是之前研究的資料，第二部分是 github 一篇 3.76 萬星的學習資源介紹。

# 之前整理資訊

我從去年就開始找 Design Patterns 的相關資訊。

我自己近幾年的經驗，從影片（線上課程或 YouTube等）學習程式設計的效率，會比看書高，所以一開始就從課程開始找起。

之所以說沒有找到合適的課程，不如說是 Fred 老師的 Python Deep Dive 深入學習系列，立下太高的標桿，我很難找到一樣好的設計模式課程。

* * *

感謝 Chris 兄的分享介紹，這堂課的講師，有一系列不同程式語言的設計模式課程，相信對這個主題很有把握。

對照我常提的 [**選課標準**](https://vip.studycamp.tw/t/topic/4835) ，這堂課比較大的問題是最後更新日期。不過設計模式這個主題，並不需要時常更新，相較於書籍出版，反而還算新，所以只要有持續在回覆學生提問，就沒有問題。

我們下堂共學，會選譯這堂課。

[**Design Patterns in Python**](https://www.udemy.com/course/design-patterns-python/)  
類別：Development \> Programming Languages \> Python ║ 內容：9 hours ║ 原價：NT$1,990  
建立：2019-02-21 ║ 更新：2020-08-19 ║ 註冊：21,250人 ║ 語言：English ║ 字幕：有 ║ 評分：4.49 (3,055人)

* * *

## 

我在去年4月，買了下面這堂課，不過還沒有看過。

這堂課最主要就是一一講解 GoF 23 種設計模式的 Python 實作。（GoF：Gang of Four 四人幫設計模式）

它的問題是註冊人數太少，內容時數也短了些。

[**Design Patterns in Python**](https://www.udemy.com/course/design-patterns-in-python/)  
類別：Development \> Software Engineering \> Design Patterns (software) ║ 內容：5 hours ║ 原價：NT$1,490  
建立：2019-10-01 ║ 更新：2022-10-25 ║ 註冊：1,236人 ║ 語言：English ║ 字幕：有 ║ 評分：5.00 (149人)

上面這堂課的講師，也是下面這本書的作者，但 Amazon 上的評價並不高（14人評價 3.9 星）。

> **[Amazon.com: Design Patterns in Python: Common GOF (Gang of Four) Design Patterns...](https://www.amazon.com/-/zh_TW/Design-Patterns-Python-implemented-Engineering/dp/B08XLJ8Z2J)**
>
> Amazon.com: Design Patterns in Python: Common GOF (Gang of Four) Design Patterns implemented in Python (Software Engineering): 9798702082608: Bradley, Mr Sean: 圖書

* * *

## 深入淺出設計模式

我在去年10月買了這本書，一樣還沒看，但翻了一下感覺超讚的。

有機會的話（通常這樣講就是沒機會），希望可以在設計模式共學課程時，對照學習。

但這本書是 Java，這可能也是我一直沒看的原因（很明顯是藉口）。

> **[天瓏網路書店 | 深入淺出設計模式, 2/e (Head First Design Patterns: Building Extensible and...](https://www.tenlong.com.tw/products/9789865029364)**
>
> 探索《深入淺出設計模式》第二版，學習如何建構可擴展、易維護的物件導向軟體，讓設計更簡單有趣 | 書名：深入淺出設計模式, 2/e (Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software, 2/e)，ISBN：9865029367，作者：Eric Freeman , Elisabeth Robson 著，出版社：歐萊禮，出版日期：2021-09-02，分類：Design...

原文書是 Amazon Object-Oriented Software Design 類別的銷售第一名。（521人評價 4.7星）

> **[Amazon.com: Head First Design Patterns: Building Extensible and Maintainable...](https://www.amazon.com/-/zh_TW/Head-First-Design-Patterns-Object-Oriented/dp/149207800X)**
>
> Amazon.com: Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software 2nd Edition: 9781492078005: Freeman, Eric, Robson, Elisabeth: 圖書

* * *

## Python 設計模式深入解析

專門介紹 Python 設計模式也有，因為是2015年出版的，加上買了前一本書，對這本有點猶豫。

> **[天瓏網路書店 | Python 設計模式深入解析 (Mastering Python Design Patterns)](https://www.tenlong.com.tw/products/9789864340415)**
>
> 深入了解 Python 設計模式，透過真實範例學習如何解決軟體設計問題，適合中等程度程式設計師的必備資源 | 書名：Python 設計模式深入解析 (Mastering Python Design Patterns)，ISBN：9864340417，作者：Sakis Kasampalis 著、江良志 譯，出版社：博碩，出版日期：2015-08-30，分類：Python、程式語言、Design Pattern

Amazon 上 53人評價 4.3 星。

> **[Amazon.com: Mastering Python Design Patterns: A guide to creating smart,...](https://www.amazon.com/-/zh_TW/Mastering-Python-Design-Patterns-efficient/dp/1788837487)**
>
> Amazon.com: Mastering Python Design Patterns: A guide to creating smart, efficient, and reusable software, 2nd Edition: 9781788837484: Ayeva, Kamon, Kasampalis, Sakis: 圖書

* * *

# Python 設計模式和習慣用法

第二部分是 github 一篇 3.76 萬星的學習資源介紹，有空再來介紹。

> **[GitHub - faif/python-patterns: A collection of design patterns/idioms in Python](https://github.com/faif/python-patterns)**
>
> A collection of design patterns/idioms in Python

---

<div class="post-metadata">

### Author: ![ChrisWei](https://vip.studycamp.tw/user_avatar/vip.studycamp.tw/chriswei/32/196_2.png) [@ChrisWei](https://vip.studycamp.tw/u/ChrisWei)
#### Post date: [2023年七月3日 06:44 UTC](https://vip.studycamp.tw/t/python-design-patterns%EF%BC%88%E8%A8%AD%E8%A8%88%E6%A8%A1%E5%BC%8F%EF%BC%89%E5%A4%A7%E8%A3%9C%E5%B8%96/6212/2 "2023-07-03T06:44:40Z")

</div>

這一篇也不錯: [GitHub - weilanhanf/python-design-patterns: Python 实现23种设计模式](https://github.com/weilanhanf/python-design-patterns)，而且是中文的~
