如何用 go 做第一個網站 [lastupdate200122]
對於有程式開發基礎的人來說,go 確實是一個挺有意思,而且簡單的程式語言。不過說實在話,雖然容易開發,但真要把開發的相關元素備齊全了,這其中摸索期也挺不算短。所以,把我在研究過程中所做的筆記彙整之後,PO上來給新進夥伴們做個參考。
我在剛開始的時候打轉了半天,因為 go 可以適用的目標專案太多了。初入 go 的時候,網站、爬蟲、系統管理…每個我都想玩一下,以至於初期根本沒有具體的進展。後來自已檢討到這個問題,才開始收縮範圍,最終選擇了網站做為初入手的目標。
從做網站入手有好有壞,好處在於製作網站要求的技能點數不高,原則上搞定 restful api 和 CRUD 的資料庫操作,大概就可以做一個網站出來。太深入的技術都用不著,特別是一開始就絆著我的 傳值 / 傳位址 的概念,不用會也可以做個網站出來。缺點是還需要另外學介面的寫法,才能有一個具體的網站出來。所以,我們這個站採 go + vue.js 的模式開發,主要著墨在後端 go 的製作,vue.js 的部份只會淺略帶過。而大部份的測試,會借重 postman 來進行操作。
建議一開始先閱讀 the little go book,它會幫助你了解關於 golang 的語法,而且現在已經有繁體中文版本,這將會減少你在 golang 的入門門檻。
我在剛開始的時候打轉了半天,因為 go 可以適用的目標專案太多了。初入 go 的時候,網站、爬蟲、系統管理…每個我都想玩一下,以至於初期根本沒有具體的進展。後來自已檢討到這個問題,才開始收縮範圍,最終選擇了網站做為初入手的目標。
從做網站入手有好有壞,好處在於製作網站要求的技能點數不高,原則上搞定 restful api 和 CRUD 的資料庫操作,大概就可以做一個網站出來。太深入的技術都用不著,特別是一開始就絆著我的 傳值 / 傳位址 的概念,不用會也可以做個網站出來。缺點是還需要另外學介面的寫法,才能有一個具體的網站出來。所以,我們這個站採 go + vue.js 的模式開發,主要著墨在後端 go 的製作,vue.js 的部份只會淺略帶過。而大部份的測試,會借重 postman 來進行操作。
建議一開始先閱讀 the little go book,它會幫助你了解關於 golang 的語法,而且現在已經有繁體中文版本,這將會減少你在 golang 的入門門檻。
基礎技能與環境建置
- 安裝 golang: 在 windows 安裝 golang
- 安裝開發環境:安裝 vscode | 安裝 postman | 安裝 MySQL
- 寫一支測試檔案:寫一支測試檔案
- 上 gin 框架
- 如何讀寫資料庫
後端系統開發
- 安排自已的程式架構
- 第一個程式:會員註冊與登入
參考書籍或網站
- [網頁]從 php 到 golang 的筆記
php開發者建議優先閱讀,這會讓你把 go 寫的就像是 php 一樣的偉大 (笑) - [電子書]the little go book
初學者可以先看的書,內容異常精簡,但主要架構都有帶到。而且電子檔方便閱讀,是初入門的好材料。 - [電子書]精通Go程式設計
這本我有實體書,據說翻譯很爛…但對我來說,看簡體中文的痛苦值並不低於看這一本… - [社群]Go程式語言 (Golang Taiwan, Golang Taipei)
在 Facebook 上的 golang 社群。 - [社群]Go語言中文網
簡體中文的討論區,裡面有很多有意思的文章。