課程簡介
本課程將帶領同學學習函式語言程式設計下的程式碼 (functional programming) 轉換到物件導向程式設計 (object-oriented programming) 的幾種小技巧。 並且將在考慮各種關於維護、彈性與擴充的取捨,與同學介紹常見的數種設計模式,以及其通用設計與實作 Python 時的差別。
課程大綱
程式設計和腦經急轉彎差不多
並不見得說非得要有明確的答案
根據不同觀點,解法會有很多種
有精明的解法、自由的解法
也有繞著彎路漸漸接近正確的解法
只要符合需求的話,那就是很棒的
- 函式語言程式設計 (functional programming) 轉換至物件導向程式設計 (object-oriented programming)
- 常見敏捷開發原則與設計守則
- 常見設計模式之應用
- 工廠模式 (factory method pattern)
- 樣板方法模式 (template method pattern)
- 獨體模式 (singleton pattern)
- 策略模式 (strategy pattern)
- 轉接器模式 (adapter pattern)
- 簡報
備註
- 本課程以中文教材為主,但仍有部分文字語言為英文,同時教材僅部分使用。
- 本課程預計會安排程式考試一次。
- 實際授課內容需視課堂學員學習情況而定。
- 為配合當下最新 Python 版本,本課程不建議學員使用虛擬環境。
- 本課程會提供雲端硬碟供學員下載上課的程式碼,於課程結束後一週關閉。
- 課程網站請參考 /course/oop/
適合對象
- 嫻熟於使用 Python 者
開發環境
環境 | 版本 |
---|---|
Python | 3.8.5 |
NumPy | 1.19.1 |
SciPy | 1.5.2 |
influxdb | 5.3.0 |