J.J.'s Blogs
J.J. Huang
  • Taipei, Taiwan
本站是 J.J.Huang 的技術學習與筆記部落格,涵蓋前端、後端開發、Spring Boot、微服務、資料庫、運維等領域。分享程式語言、開發工具、系統架構及遊戲修改分析、逆向工程等的研究與知識分享。
  • Taipei, Taiwan
  • DMCA.com Protection Status
  • Go | 透過內部限制套件存取

    💬 簡介 在撰寫 Go 專案時,良好的模組封裝與權責分明對於系統的可維護性至關重要。Go 語言提供了一項特別的套件限制機制 —— internal 目錄。 透過 internal 機制,我們可以明確限制某些套件只能被「特定範圍」內的程式碼存取,使內部邏輯不會被外部依賴或誤用,達...

  • Go | 版本控制與模組相容性

    💬 簡介 隨著專案日益複雜,依賴第三方模組已成常態。妥善管理版本與相依性,是確保程式穩定運作的關鍵。 Go Modules 採用 Semantic Versioning(語意化版本) (簡稱 SemVer)做為核心依據,提供一套清晰的升級規則。 本篇將介紹: Go 模組版...

  • Go | 使用模組化系統來管理

    💬 簡介 Go 在 1.11 版之後正式導入模組系統(Go Modules),並自 1.16 起成為預設建置方式。 模組系統提供了穩定的套件管理機制,不再依賴 $GOPATH ,大幅簡化專案依賴的管理流程。 本篇文章將說明: 如何初始化與使用 go mod go...

  • Go | 建立與管理自定義套件

    💬 簡介 在 Go 語言中,透過自定義套件的拆分與組織,可以讓專案結構更加清晰、維護更為容易。 不論是共用邏輯、工具模組、或是大型功能模組化,套件化設計都是不可或缺的能力。 本篇文章將介紹: 如何建立自定義套件 套件檔案的分割與命名 公開(大寫)與私有(小寫)函式的管理...

  • Go | 解析套件作用域可見性

    💬 簡介 在 Go 語言中,識別符(如變數、函式、型別等)的命名首字母,直接影響其 可見性(Visibility) 與 作用域(Scope) 。 透過簡單的命名規則,Go 提供了明確的封裝與存取控制機制。 本篇文章將帶您深入解析套件中的公開(大寫)與私有(小寫)識別符,掌握 Go 套件...

  • Go | 套件目錄結構命名規範

    💬 簡介 在 Go 語言中, 套件(Package) 與 目錄結構 密切相關,良好的命名與規劃能讓專案更清晰、易於維護。 尤其在多人協作或專案逐漸擴大時,乾淨有序的結構可以大幅提升開發效率與可讀性。 本文將介紹套件與目錄的基本關係、命名規範,以及常見實務範例,協助您從一開始就打下良好基...

  • Go | 標準函式庫套件的使用

    💬 簡介 Go 語言內建一套功能豐富的 標準函式庫(Standard Library) ,涵蓋了格式化輸出、字串處理、時間操作、檔案管理、網路請求等功能,無需額外安裝即可使用。這些套件設計簡潔且高效,是 Go 開發的核心工具。 本文將介紹幾個常用的標準函式庫套件,包括 fmt 、 s...

  • Go | 認識套件基本概念用法

    💬 簡介 在 Go 語言中,「套件(Package)」是組織與管理程式碼的最基本單位。 無論是使用標準函式庫,還是第三方模組,了解套件的概念與用法,都是開發程式時不可或缺的第一步。 本文將帶您從最基礎開始,認識套件設計理念、 import 使用方式與套件命名規範,為後續進階應用打下堅實基...

  • Go | 最佳實踐以及常見錯誤

    💬 簡介 Go 語言中的介面是其一個非常強大的特性,讓開發者能夠寫出高度可擴展、解耦且靈活的程式碼。然而,很多 Go 初學者和中級開發者在使用介面時可能會犯一些常見錯誤,或不完全了解介面的最佳實踐。本文將分享一些 Go 介面的最佳實踐,並列出常見的錯誤,幫助開發者提升程式碼質量,避免常見的...

  • Go | 使用介面實作記錄功能

    💬 簡介 在開發應用程式時,記錄功能(Logging)通常是非常重要的部分,用來追蹤程式運行狀況、錯誤、警告等信息。在 Go 語言中,我們可以使用介面來實現不同的記錄方式,讓記錄功能更加靈活且可擴展。本文將示範如何使用 Go 介面來實作一個通用的記錄功能,支持多種記錄方式,例如:寫入文件、...