• Facebook - White Circle
  • Twitter - White Circle
  • Instagram - White Circle

© 2019 J-all All Rights Reserved.

J-all

JOIN,

JOYFUL,

JAPAN

J-all Evessa
  • J-all

Go Lang (1)

大家好。我係Joe,係J-all嘅Software Engineer。

今次想同大家講下Go (http://golang.org)呢隻programming language。




Go Lang Example

學一隻新programming language嘅時候,由example 開始係一個唔錯嘅方法。

所以今日首先想介紹一個網站: Go by Example (https://gobyexample.com/)。


我地先由 Hello World (https://gobyexample.com/hello-world) 開始。


Package

喺度講解一下Go。

每個Go file (*.go) 都要under 某一個 package。

而今次我地個main.go會放喺 package main 入面。


另外我地仲要provide 一個entry point 俾成個 package main, 而func main() {} 就係呢個package 嘅 entry point啦。


喺 Hello world 入面,用咗一個package 叫fmt (Format)。

fmt package 提供咗 Println /Printf 等嘅 on screen text printing function(log 可以用log package)。



Variables

了解咗最基本嘅 structure 之後,我地轉去睇下Variables (https://gobyexample.com/variables)。


喺go 要 define 一個variable 有好幾種方法:

假如我地要define 一個 string type 叫 a 嘅variable, value 係 "initial"。


方法一:

var a = "initial"


方法二:

a := "initial"


方法三:

var a string

a = "initial"



Functions

接住落嚟講下 Functions


Function 有分 export 同唔export 兩種。

function name 細楷開頭嘅係 unexport function, 相反地大楷嘅就係 export function。

Unexport function 只有同package 嘅其他function access 到,相反export function 就係其他package 都call 到。


睇下 Functions 個例子 (https://gobyexample.com/functions)。


func plus(a int, b int) int {

return a + b

}


plus 係 function 名, 佢食兩個variable a 同b,兩個都係 int,而return type 係 int。


Call 嘅方法如下:

plus(1, 2)

// 3


另外 go 嘅func 係可以 return multiple values 嘅

可以參考一下 Multiple Return Values (https://gobyexample.com/multiple-return-values)


func vals() (int, int) {

return 3, 7

}


Call 嘅方法如下:

a, b := vals()

// a: 3, b: 7

如果你有啲return value 係唔需要,可以用 _ (underscore) 去接。


今日講到呢度先。

下次繼續


6回の閲覧