Go 是最近流行的語言之一,許多知名的工具或服務都使用 Go 開發,如 Docker、Drone CI 等。未來 30 天,我將會從安裝 Go 的開發環境開始、到寫應用程式、最後部署 API Server 的過程,完整筆記下來。除了逼迫自己學習外,也希望能讓有緣的朋友也可以順利入門一探 Go 的奧妙。
前言
我熟悉 PHP,也了解 PHP 效能上的瓶頸。曾經想過該如何優化效能,從改演算法,到參考各文章的建議效能優先寫法,還是無法突破。曾考慮過 Phalcon,也做了 Docker Image,但因轉換時間成本過高,加上數據不足無法證明比較快,最後還是沒有應用在工作上。
正因如此,才會想學習比較高效能的語言。心中打的算盤是:把複雜運算交由高效能語言處理,Web 則交由 PHP 負責。
語言選擇除了 Go 之外,也曾看過 Node、Rust、Python 等,但最後我選擇了 Go。除了它有著老爸撐腰,加上使用過許多好用的工具(如 Docker)也是用 Go 撰寫的,因此對 Go 的很有信心。
之前也曾經寫過 Hello World 就沒再繼續下去,覺得這樣不行。這次希望自己在這 30 天之中,能成功地寫出一個像樣的東西。
目錄
- Day 1 - Let’s Golang
- Day 2 - Environment
- Day 3 - Hello World
- Day 4 - Constants
- Day 5 - Variables & Constants declarations
- Day 6 - Predeclared Type
- Day 7 - Array Type
- Day 8 - Slice Type
- Day 9 - Map Type
- Day 10 - Function declarations
- Day 11 - First class function
- Day 12 - Anonymous Function
- Day 13 - Struct
- Day 14 - Method
- Day 15 - Inheritance
- Day 16 - Dep
- Day 17 - Commands and Flags
- Day 18 - Random
- Day 19 - File
- Day 20 - YAML
- Day 21 - Send HTTP Request
- Day 22 - Parse JSON
- Day 23 - HTTP Server
- Day 24 - Delivery
- Day 25 - Docker
- Day 26 - Refactoring Name Provider
- Day 27 - Refactoring Command
- Day 28 - Add Command Parameters
- Day 29 - Interface
- Day 30 - The End
誌謝
- 良葛格無私貢獻詳細的學習筆記。