一、本篇提要 Duck Typing Polymorphism 二、值接收器、指標接收器與介面 前面實作 Speaker 及 Stringer 介面時所作,...
今天我們把的範例整理一下,首先先把操作Google Cloud的部分移到adapter 首先,我們在adapter建立資料夾google,並建立oauth....
一、本篇提要 在Go語言中,介面的實作是隱性的(implicit),不會像其他語言要求你明確實作介面,在介面這個主題下會開始介紹,如何宣告介面、實作介面、何謂...
昨天我們寫好OAuthLogin,並且註冊對應路由/ouath-login,有了路由後我們就能補上我們之前在Google Cloud上暫時留空的重新導向URL了...
一、本篇提要 panic 狀況其實也非不能補救,Go語言提供了 recover() 函式,可以在某個 Goroutine 發生 panic 後取回控制權。 r...
當我們平常像下面這樣透過Google OAuth進行登入時,點選登入後會需要有一個Redirect URI,只要Google驗證通過後,就會重新導向去打該網址,...
(圖片來源) 一、本篇提要 何謂 panic panic() 函式 二、何謂 panic 很多程式語言,都會用例外exception的方式來處理錯誤,例如...
今天來寫最後server的部分,首先新增server/server.go,透過initRouter註冊一個gin的engine後,調用RegisterHandl...
一、本篇提要 本篇主要檢視Go語言標準套件本身的程式碼片段,來了解Go錯誤處理的慣例,以及如何建立自訂錯誤error。 二、瞧瞧 Go 的錯誤處理 大部分程式語...
一、本篇提要 本篇會介紹如何將函式當成引數,傳遞給其他函式;函式也可以傳回函式,甚至可以拿函式賦值給變數(如閉包);除此之外會說明defer,延後函式的執行時機...
今天來寫上Router層的部分,開始之前,剛剛發現line-bot-sdk-go 更新到了v7版本,那我們也來跟著更新,目前使用到的地方,沒有使用方式要跟著換的...
一、本篇提要 本篇將會繼續咱有關Go語言函式的種種,今日介紹的是 : 參數不定函式(variadic function) 匿名函式與閉包 二、參數不定函式...
今天我們先定義好資料夾結構,然後寫一些框和範例起來,首先先建立下面的資料夾路徑&檔案 當收到Linebot的請求後,我們的應用會在Router層接收並...
一、本篇提要 從這篇開始,將進入到函式的介紹,將會知道它的組成、函式的變數範圍、如何建立(參數不定函式、匿名函式、閉包(closure))、呼叫函式,或將函示當...
今天我們來寫code操作前幾天設定好的AWS SSM,SSM可以用來安全的儲存一些機密的參數,我們在部屬上AWS Lambda後,像是Line的Access T...
(圖片來源:twitter @oleg_kovalov) 一、本篇重點 型別轉換 型別斷言 interface{}空介面 型別switch panic 二...
上一章講解了什麼是指標,當學會了指標的基本操作後,接下來,要說明指標應用在哪。 函式參數傳遞 最簡單的應用在函式的參數傳遞。函式的參數傳遞就是呼叫函式時,資料如...
什麼是指標? 是一種在程式語言中用於儲存記憶體位址的特殊變數或數據型態。指標允許你直接訪問和操作記憶體中的數據,而不是僅存儲數據的值。在許多程式語言中,包括 G...
(圖片來源:CyberPanda twitter) 一、本篇重點 替自訂型別(custom types)加上方法(method) 說明值接收器(Valu...
在 Go 中,return 用於結束一個函式的執行並返回一個值(或多個值)。在進入 return 前,我們簡單複習一下昨天的函示。 函式的目的在於包裝一段程式碼...
一、本篇重點 相互比較結構型別 內嵌結構 二、比較結構型別 如果結構中每一個欄位都相同,且使用可以比較的型別,那麼該結構型別的變數就可以互相比較。 pack...
一般在自己的開發測試階段,想要對外公開服務,很多人都會選擇使用Ngrok,相關的教學資源很多,尤其是LineBot相關的主題多半都有講到,難度相對不高,載下來開...
了解 Go 函式是學習 Go 非常重要的一步,所以韓式是什麼?簡單來說,就是一個程式區塊,將程式碼包裝,這樣的做法方便之後在別的地方可以重複利用此函式。在程式中...
(圖片來源:Reddit - Currently, learning golang and it feels a bit like this, can anyo...
一、本章簡介 本章會介紹的是Go語言中較為複雜一點的型別 : 陣列(array) 切片(slice) 映射表(map) 二、集合型別(Collection...
在昨天介紹了 for loop,而在 Go 中,有兩個與迴圈搭配的兩個命令,分別是: break continue break 在某些狀況下,你需要跳離迴圈...
迴圈是用來重複執行一段程式碼區塊,直到某個條件滿足為止。這樣可以有效地處理重複執行的任務,而不用手動重複相同的程式碼。如下: package main impo...
一、前言 本篇介紹與整理 Go 語言 中型別的部分。 布林值:true/false 數字 整數 浮點數 溢位和越界繞回 大數值 位元組(Byte) 字串(St...
What is CRUD? Create: insert new records to the database READ: Select or Search...
if 是一個用於執行條件判斷的控制結構,如果條件成立,就會執行 if 後面的大括號 ({}) 內的程式區塊,否則就會忽略該程式區塊繼續執行後續的程式。 if i...