接下來的單元,我會分為幾天,來介紹幾個常用的標準函式庫的使用方式,讓大家能很快地進入 golang 的世界 strings 字串的處理,我想應該是基礎中的基礎...
今日目標 如昨天所說,因為我們自己的 Phish Github 沒有把正確的 status code 傳給瀏覽器(下圖),所以沒辦法重新導向,而今天就是要解決這...
今天我們來聊一下「Channel」,中文可以翻譯為「通道」。在實作上通常與Goroutine一起,作為彼此之間的通信機制,可以收(Receive)發(Send)...
俗話說的好,『如果說我看得比別人更遠,那是因為我站在巨人的肩膀上。』,在 opensouce 裡面,也是一樣,我們可以提供自己寫好的 package 給別人用,...
go test除了這兩天講的測試(testing)與壓力測試(Benchmark)以外,還包含了示例函數 Example。我們常常說測試就是最好的規格文件,具體...
在 go 1.11.1 版本上引入了新的套件管理工具 go mod,用來支持本地用的套件庫,另外在 visual studio code,進行開發會遇到程式碼檢...
今日目標 看完前一天的分析之後會發現,其實登入就是把 cookie 傳來傳去而已,今天的目標就是要在 reverse proxy 中實作 把 cookie 傳來...
在伺服器端渲染頁面到瀏覽器端,這部分也是前後端模糊的地帶,因為有樣版引擎的存在,讓義大利式的開發很有機會發生,在使用類似的樣版引擎的時候,要特別小心,盡量不讓過...
昨天我們討論到測試,其實除了一般程式的檢查以外,golang還內建了壓力測試的功能,可以檢查程式的效能。 跟測試一樣,golang是透過函數名稱來識別一個函數是...
現代程式開發早已經離不開測試。不如說,當測試程式沒有完成就不能說開發已經完成,必須把測試與功能實作的部分作為一個整體看待。Golang原生就支援單元測試與Ben...
我寫到現在,我一直覺得 golang 的 error 設計,一直讓人又愛又恨...,我們今天會分兩個面向來介紹它,一種是語言層面的 error ,也就是 pan...
select 在 golang 裡面是一個跟 switch 很像,但又只專屬用在 channel 的一個功能 select select 功能其實蠻簡單的,如...
接下來是 golang 重頭戲之二 channel ,上一篇已經有講過 gorotuine,channel 的用途非常多,可以拿來當不同 gorotuine 的...
俗話說得好:「神仙打鼓有時錯」,程式在執行階段當然難免會有錯誤產生。為了避免錯誤造成怎麼系統中斷或資料疑遺漏等嚴重的情況發生,合適的錯誤處理是不管哪種語言都需要...
今日目標 因為昨天發現左上角的 Github logo 會把使用者導回真正的 Github,打開 devtool 看到 https://github.com/...
接下來要進到 golang 的重點特色之一 goroutine ,江湖傳言,你寫 golang 沒用到 goroutine 以及 channel,就不算寫過 g...
在 GamiLMS 中用 Facebook 的 OAuth 來進行驗證並登入Golang 中處理 OAuth package main import ( &...
經過了十七天的努力,這個字眼常常在我找資料的時候出現,今天就來一探究竟,到底「Goroutine」是個什麼東西? 如果用簡單的譬喻去形容的話,Goroutine...
今日目標 今天的目標是要實作轉發請求到 Github,那要怎麼轉發呢?先來分析一下平常上 Github 時瀏覽器幫你做了什麼: 瀏覽器發出 GET 請求到 G...
golang 的 interface,我覺得對初學者來說會有點疑惑,畢竟 interface 在這裡有兩個意思,一個代表『泛用型別』、一個代表類似傳統 OOP(...
難得有讀者主動點播,今天就來介紹「interface」的概念,中國翻譯為「接口」。要特別注意,這個interface跟其他語言中的定義與作用會不太一樣。 首先讓...
http 是無狀態的,每個連線都是獨立的,為了識別 Client 的狀況,在 Client 端留下訊息,在每次的連線中,讓 Server 可以取得 Client...
接下來進入到 golang 的 struct & pointer,如果有學過 C 的應該挺熟悉的這兩個 keyword,畢竟 golang 是有號稱21...
今日目標 今天的目標非常簡單,我們要自己寫一個非常陽春的 http server 監聽在 port 8080,話不多說,直接開始吧! net/http net...
前面兩天講的都是基本的語法,Go 有的其他語言也有,但今天要說的 Goroutine 跟 Channel 就是 Go 才有的特性了,也是 Go 最厲害的地方...
在 Gamilms 裡會在 /config/system_config.json 中讀取全域性的設定,比如 oAuth 用的 key 或是資料庫的連線字串等等....
默默超過鐵人賽的二分之一,雖然我自己也覺得這次參賽的文章養分有點不足,但至少我依然沒有放棄! 昨天的範例中忽然想起我漏掉了一個golang當中很重要的元素,也算...
golang 不是一種 OOP (Object-oriented programming) ,反而比較偏向 FP (Functional Programming...
Slice Slice 就像 JS/Python 的 Array 或是 C++ 的 Vector,可以使用 append 增加元素、用 len 取得長度 Run...
昨天我們介紹golang中post表單的最基礎範例,今天我們看一下稍微進階一點的範例,建立一個留言表單。首先我們看一下前端的部分: {{if .Success}...