感謝您提交詢問!我們的一位團隊成員將在短時間內與您聯繫。
感謝您提交預訂!我們的一位團隊成員將在短時間內與您聯繫。
課程時長 28 時間:
課程簡介
第一天 — 穩健的 Python 基礎與工具鏈
現代 Python 特性與類型提示
- 類型提示基礎、泛型、協議(Protocols)及 TypeGuard
- 數據類(Dataclasses)、凍結數據類(frozen dataclasses)及 attrs 概覽
- 模式匹配(PEP 634+)及慣用法
代碼質量與工具鏈
- 代碼格式化工具及 linter:black, isort, flake8, ruff
- 使用 MyPy 和 pyright 進行靜態類型檢查
- Pre-commit 掛鉤及開發者工作流
項目管理與打包
- 使用 Poetry 及虛擬環境進行依賴項管理
- 包佈局、入口點(entry points)及版本控制的最佳實踐
- 構建并发布包至 PyPI 及私有註冊表
第二天 — 設計模式與架構實踐
Python 中的設計模式
- 創建型模式:工廠模式、建造者模式、單例模式(Pythonic 變體)
- 結構型模式:適配器模式、外觀模式、裝飾器模式、代理模式
- 行為型模式:策略模式、觀察者模式、命令模式
架構原則
- 將 SOLID 原則應用於 Python 代碼庫
- 六角形/清潔架構及邊界定義
- 依賴注入模式及配置管理
模塊化與複用
- 庫代碼與應用代碼的設計區分
- API、穩定接口及語義化版本控制
- 處理配置、機密信息及環境特定設置
第三天 — 並發、異步 IO 與性能
並發與並行
- 線程基礎及 GIL(全局解釋器鎖)的影響
- 使用多進程及進程池處理 CPU 密集型任務
- 何時選擇 concurrent.futures 對比 multiprocessing
使用 asyncio 進行異步編程
- Async/await 模式、事件循環及取消機制
- 設計異步庫及與同步代碼的互操作性
- IO 密集型模式、背壓(backpressure)及速率限制
性能分析與優化
- 分析工具:cProfile, pyinstrument, perf, memory_profiler
- 優化熱路徑(hot paths),並在適當時使用 C 擴展/Numba
- 測量延遲、吞吐量及資源利用率
第四天 — 測試、CI/CD、可觀察性與部署
測試策略與自動化
- 使用 pytest 進行單元測試及 fixture;測試組織結構
- 使用 Hypothesis 進行基於屬性的測試及契約測試
- Mock、monkeypatch 及異步代碼的測試
CI/CD、發布與監控
- 將測試及質量門禁集成到 GitHub Actions/GitLab CI 中
- 使用 Docker 及多階段構建創建可重現的容器
- 應用可觀察性:結構化日誌、Prometheus 指標及追蹤
安全、加固與最佳實踐
- 依賴項審計、SBOM 基礎及漏洞掃描
- 輸入驗證及機密信息管理的安全編碼實踐
- 運行時加固:資源限制、用戶權限及容器安全
綜合項目與回顧
- 團隊實驗:設計並實現一個使用課程中模式的小型服務
- 項目的測試、類型檢查、打包及 CI 管道
- 最終回顧、代碼評審及可行的改進計劃
總結與下一步
最低要求
- 紮實的中級 Python 編程經驗
- 熟悉面向對象編程及基礎測試知識
- 有使用命令行和 Git 的經驗
受眾
- 高級 Python 開發者
- 負責 Python 代碼質量與架構的軟件工程師
- 處理 Python 代庫的技術負責人及 MLOps/DevOps 工程師
客戶評論 (2)
一切都很完美
Florin Vrincianu
課程 - Python Programming Fundamentals
機器翻譯
與內容相關的實踐練習確實有助於更好地理解每個主題。此外,以講座開始課程並繼續進行實踐練習的方式很好,有助於將練習與之前介紹的講座內容聯繫起來。
Nazeera Mohamad - Ministry of Science, Technology and Innovation
課程 - Introduction to Data Science and AI using Python
機器翻譯