課程名稱:

進階Python程式設計

課程英文名稱: Advanced Python Programming
教學目標:
為進階Python程式設計課程設定的教學目標旨在提升學生的高階編程能力,涵蓋以下核心內容:學生將掌握進階資料結構(如堆、圖)與演算法(動態規劃、搜尋),並分析其複雜度;精通物件導向程式設計的進階概念,如繼承、抽象類與設計模式;熟練運用生成器、函數式編程及非同步編程(asyncio)優化程式效能;深入理解模組與套件管理,應用pandas、scikit-learn等庫進行資料分析與機器學習;培養程式碼最佳化(使用cProfile)與單元測試(pytest)能力;最終透過團隊專案(如網頁應用或自動化工具)整合所學,熟悉git協作流程。課程透過作業、專案與測驗評量,結合實作與業界案例,確保學生能將Python應用於實際問題解決。
教材大網:
單元1:進階資料結構與演算法基礎 複習Python內建資料結構(list、dict、set)的高效操作
- 進階資料結構:堆(heapq)、優先佇列、圖
- 基本演算法:排序(快速排序、合併排序)、搜尋(二分搜尋)
教學參考節數: 4
單元2:進階物件導向程式設計(OOP) - 進階OOP:繼承、多型、抽象類(abc模組)
- 魔術方法(__str__、__iter__)、屬性管理(@property)
- 設計模式:單例模式、工廠模式
教學參考節數: 5
單元3:高效編程技術 - 生成器(yield)與迭代器
- 函數式編程:map、filter、reduce、lambda
- 生成式(list/dict/set comprehension)與效能比較
教學參考節數: 4
單元4:多執行緒與非同步編程 - 多執行緒(threading)、多進程(multiprocessing)
- 非同步程式設計(asyncio、事件迴圈)
- 並行問題:競爭條件、死結與解決方案
教學參考節數: 5
單元5:模組與套件管理 - 創建與發布套件(setuptools、PyPI)
- 第三方庫:requests、基礎numpy
- 虛擬環境(venv)與依賴管理
教學參考節數: 4
單元6:資料分析與視覺化 - 資料清理與分析(pandas)
- 資料視覺化(matplotlib、seaborn)
- 基礎統計分析與資料預處理
教學參考節數: 5
單元7:機器學習入門 - 機器學習基礎:監督與非監督學習
- 使用scikit-learn實作模型(線性回歸、決策樹)
- 模型評估與超參數調整
教學參考節數: 4
單元8:專案開發與程式碼最佳化 - 專案規劃與版本控制(git、GitHub)
- 程式碼效能分析(cProfile、timeit)
- 單元測試(unittest、pytest)
- 最終專案:網頁應用(Flask)或自動化工具
教學參考節數: 5
 

基本素養能力圖

A. G. 國際視野B. G. 博雅素養
C. G. 公民素養D. G. 溝通合作
E. G. 生涯發展F. G. 資訊應用
G. G. 問題解決H. G. 創新跨域
I. G. 國際視野J. G. 博雅素養
K. G. 公民素養L. G. 溝通合作
M. G. 生涯發展N. G. 資訊應用
O. G. 問題解決P. G. 創新跨域

系科專業能力圖

A. 團隊合作與溝通能力B. 職場倫理與道德素養
C. 創新思考與問題解決能力D. 資訊科技應用能力
E. 基礎金融能力F. 基礎財務能力
G. 理財規劃能力H. 投資分析能力
I. 財會與內控稽核能力J. 團隊合作與溝通能力
K. 職場倫理與道德素養L. 創新思考與問題解決能力
M. 資訊科技應用能力N. 基礎金融能力
O. 基礎財務能力P. 理財規劃能力
Q. 投資分析能力R. 財會與內控稽核能力

授課形式分析圖

A. 理論講述與討論B. 個案分析或作品賞析
C. 行動實作與報告