聯繫我們
 課程時長 28 時間:

課程簡介

第1天 — 穩健的Python基礎與工具

現代Python功能與型別標註

  • 型別標註基礎、泛型、Protocols與TypeGuard
  • 資料類別、凍結資料類別與attrs概述
  • 模式匹配(PEP 634+)與慣用用法

程式碼品質與工具

  • 程式碼格式化工具與Linters:black、isort、flake8、ruff
  • 使用MyPy與pyright進行靜態型別檢查
  • Pre-commit hooks與開發人員工作流程

專案管理與封裝

  • 使用Poetry與虛擬環境進行依賴管理
  • 套件佈局、進入點與版本控制最佳實踐
  • 建置並發布套件至PyPI與私有儲存庫

第2天 — 設計模式與架構實踐

Python中的設計模式

  • 建立型模式:Factory、Builder、Singleton(Python慣用變體)
  • 結構型模式:Adapter、Facade、Decorator、Proxy
  • 行為型模式:Strategy、Observer、Command

架構原則

  • 應用於Python程式碼庫的SOLID原則
  • 六邊形/乾淨架構與邊界
  • 依賴注入模式與配置管理

模組化與重用

  • 設計函式庫與應用程式程式碼
  • API、穩定介面與語意化版本控制
  • 處理配置、機密與環境特定設定

第3天 — 並行、非同步IO與效能

並行與平行處理

  • 執行緒基礎與GIL的影響
  • 多處理與處理池,用於CPU密集型任務
  • 何時使用concurrent.futures與multiprocessing

使用asyncio進行非同步程式設計

  • Async/await模式、事件迴圈與取消
  • 設計非同步函式庫並與同步程式碼互通
  • IO密集型模式、背壓與速率限制

效能剖析與最佳化

  • 剖析工具:cProfile、pyinstrument、perf、memory_profiler
  • 最佳化熱點路徑,並在適當處使用C擴充/Numba
  • 測量延遲、吞吐量與資源利用率

第4天 — 測試、CI/CD、可觀測性與部署

測試策略與自動化

  • 使用pytest進行單元測試與fixtures;測試組織
  • 使用Hypothesis進行基於屬性的測試與契約測試
  • 模擬、monkeypatching與非同步程式碼測試

CI/CD、發布與監控

  • 將測試與品質門檻整合至GitHub Actions/GitLab CI
  • 使用Docker與多階段建置,建立可重現的容器
  • 應用程式可觀測性:結構化日誌、Prometheus指標與追蹤

安全性、強化與最佳實踐

  • 依賴稽核、SBOM基礎與漏洞掃描
  • 輸入驗證與機密管理的安全編碼實踐
  • 執行時期強化:資源限制、使用者權限與容器安全性

專題專案與回顧

  • 團隊實驗室:使用課程中的模式設計並實作一個小型服務
  • 專案的測試、型別檢查、封裝與CI管線
  • 最終回顧、程式碼審查與可行的改進計畫

總結與後續步驟

最低要求

  • 具備扎實的中階Python程式設計經驗
  • 熟悉物件導向程式設計與基本測試
  • 具備使用命令列與Git的經驗

目標學員

  • 資深Python開發人員
  • 負責Python程式碼品質與架構的軟體工程師
  • 處理Python程式碼庫的技術主管與MLOps/DevOps工程師

人數


每位參與者的報價

客戶評論 (2)

即將到來的課程

課程分類