VIBE CODING FIELD GUIDE · CHAPTER 06

軟體架構與測試:Monolith、Microservices、Serverless、E2E

軟體架構是在決定誰負責什麼,而測試是在確認系統是否真正照預期運作。

適合第一次用 AI 寫網站、應用程式或自動化工具的讀者。更新:2026 年 11 月 5 日。

返回完整知識地圖

先用一句話理解

理解 Monolith、Microservices、Event-driven、MVC、Distributed Systems、Unit Test、Integration Test、E2E Test、Regression Test、Monitoring。

不要只記縮寫。要能回答:這個技術是什麼類型、負責什麼、與哪些工具相依、出問題時要查哪一層。

架構與測試:基礎名詞與具體例子

名詞白話解釋使用情境
Architecture系統職責、模組、資料流及部署方式的整體設計。把支付、會員與商品分為不同責任。
Monolith將主要功能集中於同一應用部署。小型電商用單一後端。
Microservices功能拆成獨立部署的服務。庫存與訂單各自管理。
Serverless底層執行環境由平台管理的部署方式。以代管函式處理 API。
Event-driven事件發生後觸發其他處理。訂單付款完成後通知出貨。
MVCModel、View、Controller 的責任分離模式。資料、畫面、控制流程分離。
Distributed System多個節點透過網路協作。網站、資料庫及外部付款服務協作。
Unit Test驗證單一函式或元件的行為。折扣計算函式測試。
Integration Test驗證多模組或外部系統連接。測試訂單 API 是否正確寫入資料庫。
E2E Test從使用者端驗證完整流程。選商品至付款完成。
Regression Test確認改版不破壞原有功能。升級後重新測試結帳。
Load Test驗證指定流量下的系統表現。模擬促銷高峰流量。
UAT由業務或使用者驗收實際需求。營運團隊確認退款流程可用。

常見混淆:它們究竟差在哪?

Monolith vs Microservices

主要差在應用功能是否拆成獨立部署的服務,不是技術越多越好。

Serverless vs Microservices

Serverless 描述執行模式;微服務描述應用切分方式。

Unit vs E2E

Unit 驗證單點行為;E2E 驗證整條使用者路徑。

實作時的三個檢查點

  1. 先選擇最簡單、可驗證需求的架構。
  2. 為核心流程建立單元、整合及端到端測試。
  3. 請 AI 列出可能的失敗情境和復原方式,並記錄你最後選擇這個架構的理由。

常見問題 FAQ

使用微服務是否更專業?

不一定。小團隊過早使用微服務可能增加部署、監控及資料一致性的負擔。

AI 寫的程式還需要測試嗎?

需要。模型能生成看似合理的實作,但不能取代真實環境與驗收測試。