距上次發文又超過半年的時間了,這次就來分享學習Golang吧,因應工作需求我要自學Golang,在這轉換過程約1個月的時間我從完全不會寫go、也不懂如何部署程式GCP上,到目前已經有初步成果寫成文章分享給大家,預計會分成3篇:
1. 我如何開始自學Golang?
2. 如何在學習GCP相關知識?
3. 如何從不懂CI/CD到規劃GitOps並在GCP上串接CI/CD?
這篇先分享第1點 我如何開始自學Golang?
我習慣做事會用Sublime Text做筆記,因此我初期先列出我要學的幾點
1.詢問很強的Golang大神朋友(很感謝Minchao給了我超多建議)
2.學習Golang的開發工具,我初期有用Visual Studio Code寫了hello world,後來IDE改用Goland,它真的太強大了
Visual Studio Code :
優點:免費
缺點:plugin要找適合自己的下載試用
Goland :
優點:官方有附詳細的附加功能使用說明,並且你想得到的通通都內建
缺點:試用只有30天,費用訂閱制,月付或年繳
3.了解基本型別、module、function宣告方式、常用package,例如string、array、File I/O等等…可以參考這篇Golang roadmap自學再加上網路搜尋大量的文章花1~2星期閱讀加上練習
4.學習gin web framework撰寫RESTful API(API文件可使用Swagger)、gorm讀寫資料庫
5.單元測試(go test)、code format(go內建有)、code style、build執行檔相關工具或指令
有關code style其實可以參考google官方再加上Uber go style
6.學習專案程式資料夾框架project-layout
在學習過程我也發現學習Go千萬不要用JAVA的物件導向去學,反而要把JAVA的觀念拋開讓自己歸零去學習一種新的程式語言會更好吸收,也才不會讓自己觀念會卡住,Go本身的設計讓其彈性很大,對初學者建議掌握下列幾點:
- Struct
- Receiver
- Pointers
- 基本型別
- 容器&特性
- 查閱官方文件
剩下第2、第3點2篇文之後再另外發表,希望上述幾點分享能幫助到像我一樣學習Goland的新手
留言
張貼留言