Course Code: bpfapi
Duration: 21 hours
Course Outline:

  1. 微服務與整體式 應用程式
  2. 功能概述 FastAPI:
    1. 代碼結構
    2. 如何創建應用程式?
    3. 依賴關係注入
  3. 同步和異步處理
    1. 介紹
    2. 使用外部庫
  4. 使用 pydantic 構建數據模型,包括:
    1. 驗證
    2. 元數據
    3. 嵌套模型
  5. 處理查詢 - 傳送:
    1. JSON 形式的數據
  6. 回應處理:
    1. JSON 格式
    2. 流 
    3. 自訂回應代碼
  7. 要求身份驗證:
    1. 基本身份驗證
    2. JWT
  8. 與 SQLALchemy 集成:
    1. 事務處理
    2. 模型開發、驗證、混合模型
    3. 使用 SQLAlchemy 的最佳實踐
  9. 後台任務:
    1. 後台任務 FastAPI
    2. 與 celery 整合:
      1. 後端選擇
      2. 配置
      3. 單個解決方案的優缺點
    3. 使用 FastAPI + celery + redis 作為代理構建應用程式
  10. FastAPI 機器學習模型:
    1. 使用 FastAPI 公開模型的最佳實踐
    2. 使用 cookiecutter
  11. 應用程式測試
    1. 測試和異步
    2. pytest 簡介
    3. 類比和修補
    4. 通過測試測量代碼覆蓋率
    5. 將 pytest 整合到 CI/CD 環境中
    6. 使用 testcontainers 執行功能測試
  12. 專案工作
  13. 總結