我是一個C#工程師,想要透過鐵人賽學習Go語言。我大約是今年8月才開始學Go,希望能在比賽過程中快速學會Go,目標是每天寫一篇學習筆記,持續30天。雖然網路上已經有很多Go相關的教學文章,但我仍然想要寫一份屬於自己的筆記。
大家好,今天是鐵人賽第二十一天。今天來介紹go語言的檔案操作方式。 ioutil 套件 ioutil 套件是最簡單的檔案操作方式,定義在 io/ioutil 目...
大家好,今天是鐵人賽第二十二天。今天要來介紹go語言的網路操作方式,網路其實也是 io 的一種,最常見的就是 HTTP 協定。 HTTP Client go語言...
大家好,今天是鐵人賽第二十三天。今天來講go語言的併發,稱為goroutine。goroutine屬於多執行緒處理,用 go 關鍵字執行一個函式,就會建立一個新...
大家好,今天是鐵人賽第二十四天。Go語言的goroutine可以併發,提高程式運算效能,但還需要配合通道的使用,才能發揮最大的效益。 今天就來講go語言的通道,...
大家好,今天是鐵人賽第二十五天。昨天介紹了通道的基本用法,我覺得通道是一個很複雜的東西,用不好很容易 deadlock,而今天就繼續來講通道的其他特性。 有緩衝...
大家好,今天是鐵人賽第二十六天。通道可以讓多個goroutine的資料同步,不過go語言其實還有其他的同步機制,像是鎖定(lock)。所以今天就來講go語言還有...
大家好,今天是鐵人賽第二十七天,我們來談談Go語言的反射。雖然說使用反射會降低效能,但也要是很大量或頻繁的使用才會有感。如果要製作一個靈活的套件或是底層模組,反...
大家好,今天是鐵人賽第二十八天。今天繼續講反射。 反射值 反射除了可以獲取變數的型別資訊外,也可以獲取變數內部的值。 反射值的方式有兩種: 先取出空介面,再用...
大家好,今天是鐵人賽第二十九天。終於快結束啦,倒數一天就來談談單元測試吧。 我雖然是資訊相關科系畢業,但是學校沒有教寫單元測試,上一間公司也不寫單元測試,因為上...
大家好,今天是鐵人賽最後一天了,總覺得這一個月過得特別漫長,有幾天因為比較忙碌,就寫得比較短,之後我會找時間補上去。 最後一天再來講Go語言的測試工具,昨天介紹...