本系列文章將帶領讀者從零開始,使用 Go 語言打造一個完整、可維護、可測試的生產級 API 服務。我們將深入探討現代後端開發中的各個環節,從專案的架構設計、核心功能實現,到最終的測試、部署與維運。專案將採用六角形架構(Clean Architecture)思想,並整合 Gin、GORM、Docker、Swagger、golangci-lint 等業界常用工具與技術。
在上一篇文章中,我們介紹了如何在六邊形架構中優雅地處理錯誤,並建立了一套從資料庫層到 HTTP 回應的完整錯誤處理流程。這一篇,我們將進一步探討如何定義自己的錯...
什麼是單元測試?為什麼要寫單元測試?如何在 Go 中撰寫單元測試?這些問題的答案,網路上已有大量的資源可以參考,這裏就不再贅述。 然而,當我們的程式碼依賴外部系...
在我們整個專案的目錄結構中,internal 目錄佔據了核心地位,我們幾乎所有的業務程式碼都存放在其中。你可能會想,這僅僅是一個命名約定嗎?我能把它命名為 pr...
對於絕大多數後端工程師而言,MVC(Model-View-Controller)是我們學習 Web 開發時接觸的第一個,也是最經典的架構模式。無論是 Ruby...