- Published on
[Go 學習系列] 1. Let's Go! 認識 Go
- Authors
- Name
- Vic Chen

前言
作為一名後端工程師,過去我的主要開發經驗一直都是 Java。
為了拓展自己的工具技能,我決定嘗試學習 Go。
在學習的過程中,我把所學整理成筆記,方便未來的自己回顧;同時,也希望這篇文章能幫助像我一樣剛開始接觸 Go 的初學者,一起學習並成長。
What is Go?
Go (又叫 Golang) 由 Google 在 2007 年 開發,並於 2009 年 正式開源發佈,是一門開源程式語言 Go 的設計目標是為了 簡潔、高效、易於維護,特別適合用於伺服器端(Server-side)、雲服務(Cloud Service)以及分散式系統(Distributed Systems)開發。
Less can be more. -- 大道至簡,小而蘊真。把事情變得複雜很容易,把事情變得簡單才困難。
Go 的主要特色
語法簡單
- Go 的語法規則嚴謹,幾乎沒有「黑魔法」用法。
- 例如:把
++
、--
從運算子降級為語句、保留指針但禁止指針運算,內建切片(Slice)與字典(Map),並從 Runtime 層面優化。
並發模型
- Goroutine + Channel,讓多執行緒開發變得更直觀。
- Goroutine 可以看成是「輕量級的協程 (Coroutine)」,由 Runtime 層面幫忙做更高效的調度。你不用自己處理 Callback,也不用煩惱線程切換。
- Channel 則實現了 CSP(Communitcating Sequential Processes)模型,讓並發單元之間的資料傳遞更自然,不再糾結於記憶體共享與鎖的細節。
靜態型別
編譯時就能檢查型別,降低出錯率。垃圾回收 (GC)
不需要手動管理記憶體,開發更省心。
Why Go?
- 設計哲學:簡單、務實。
- 高效性能:接近 C 的執行效能,開發體驗卻更像直譯語言一樣輕快;編譯速度也極快。
- 並發支援:Goroutine 讓並發程式設計 (Concurrency Programming) 變得親民好上手。
結語
這篇文章主要是作為 系列導言,幫助你快速了解 Go 的背景與特色。
接下來,讓我們正式開始學習 Go 吧! Let's Go!🚀。