Array // n 陣列元素數量 // type 陣列元素類型 var array變數 [n]type 長度是固定的, 聲明後無法被改變 長度是陣...
大家好,今天是鐵人賽第四天,我要來講go語言的基本型別。由於go是一個強型別的語言,因此了解型別是一件很重要的事。go型別大致上可以區分為基本型別、指標型別,以...
安裝Go跟開發環境 Golang下載Install docVsCode Install the GO on Linux # Download file wget...
大家好,今天是鐵人賽第三天,昨天介紹了開發環境和第一支Go程式,而今天我要來講Go的基本程式結構,以及變數的用法。 程式結構 我們先來回顧一下昨天的第一支程式h...
學Golang的緣由 這是小弟第一次參加鐵人賽, 來挑戰一下自我.開始學著寫Golang的原因是因為寫了幾年NodeJS跟C#,但Node真的一個專案打包成d...
大家好,今天是鐵人賽第二天,要來介紹Go的開發環境如何安裝,以及如何執行第一支Go程式。Go支援三大平台windows, mac, linux,我是用ubunt...
大家好,這是我生平第一次參加鐵人賽,想要透過比賽來強迫自己學習新的程式語言。我目前是一個C#後端工程師,平常在公司是寫.net core,因為最近對go很有興趣...
前言 現在版控軟體越來越流行,最流行的其中一種為Git,基本上有用Git的人,會想要OpenSource就會上傳到GitHub、想要自己架設Git伺服器就用Gi...
用 Emacs 來寫 Go 前面已經做完編輯 Go 程式的設定,我們這一篇來看在真正編輯 Go 程式時,可以使用到的各項功能 做一個函式庫 根據 Go 對於 w...
Emacs 對於編輯 Go 程式的支援 程式美化排版: Go-mode + gofmt 自動加入或刪除 import: Go-mode + goimport...
最後一天,再找個需求來做一下好了。 指令雖然完成了,但是下載下來如果使用者沒有 YAML 檔會無法使用。但理論上,程式應該提供這個檔案。 因此,今天來實作初始化...
介面(interface)跟一般 Java 所熟知的介面意義是一樣的:定義實體(instance)的行為。 定義與實作 介面定義方法很簡單,只要定義傳入與傳出就...
我們在重構 Name Provider 有提到,指令必須也要加參數,才有辦法傳給 Provider 產生對應的結果。 除此之外還有個需求:參考 Faker ,我...
指令套件 github.com/urfave/cli 算蠻好上手的。雖然好用,但似乎其他套件也不錯,如 Cobra 等。 目前 Command 實際處理任務的程...
前面 25 天,我們已經成功寫出了一個 CLI App 以及 Web App ,包括交付與佈署都有實作,這次鐵人賽主題的基本要求已經算達標了。 剩下五天的目標將...
做完交付後,下一個目標就是要做佈署了!不過我們佈署可以做簡單一點,在 Docker 上能跑就行了! 最後期望的結果是,只要機器有 Docker Daemon ,...
截至目前為止,應用程式該有基本功能都已經完備了,再來就是最後一哩路了--交付。 分析 交付前必須要經過建置(Build)的過程,不過畢竟只是 side proj...
因為參加的是 Modern Web 主題,不管怎樣,還是跟 Web 掛勾一下好了。 今天的主題是如何起一個 Web Server 。 分析 Go 本身即有內帶一...
昨天把網頁載好,不過裡面的資料似乎很難處理。後來有找到另一個 API : https://www.moedict.tw/a/字.json 它會回傳 JSON...
中國字非常深奧,有些字的含意,有時候並不是那麼清楚。還好網路上都能查得到這些資訊。 今天要來做如何把查出來的網頁資訊抓下來,也就是常見的 HTTP 協定功能。...
昨天已經成功把檔案載入變成 []byte 型態,今天要來讀 YAML 檔了。 分析 昨天有提到會使用 go-yaml 解析 YAML 資料,資料格式參考 Fak...
文字清單如果都寫死在程式裡的話,擴充性就太差了,預期它應該要可以從檔案抓出文字清單。 分析 基本的檔案操作應該不大會有問題,要思考的會是,該要用什麼樣的格式來存...
如果要產生假資料的話,亂數產生器是必要的。 今天先建立一個中文字的資料結構,然後再由 Go 產生亂數來選擇中文字,最後再經由 Command 輸出。 分析 首先...
在開始正式寫假文產生器前,我們先來看看哪些子命令和參數是需要定義的。 分析 找了一下套件說明,看起來只要把這個值代入 Command 結構的 slice 即可有...
學一個程式語言,最快的學法就是直接從實作中學。從今天開始要進入應用程式實作階段了! 最終想做的應用程式為:姓名產生器。 簡單介紹:透過應用程式可以產生姓名,並可...
昨天學完怎麼在結構上加方法後,它就很像在設計物件導向程式了。今天來看看它怎麼實作繼承。 先把昨天最後的程式搬一點過來: package main import...
結構可以定義同類型的資料,而同類型的資料通常又會有同類型的行為。因為 Go 有 Anonymous Function ,有寫過 Javascript 可能第一...
struct 是定義資料的集合,跟物件很像,也是把資料集合在一包。 定義 struct 可以使用 type 關鍵字定義,開頭的大小寫跟函式一樣,會影響能見度;內...
昨天在使用 callback 的時候,有用到匿名函式。今天來看一下匿名函式的其他細節。 下面是一個簡單匿名函式的使用方法: package main impo...
昨天定義好的函式,可以當作變數來使用,如: package main import "fmt" import "reflect&...