開發(fā)環(huán)境
go version: go1.10.3 darwin/amd64
os: osx10.13.5
配置
安裝go時(shí)的位置為GOROOT
而自己項(xiàng)目文件以及其他文件存放的位置自己定義葫哗,我放在了我的用戶目錄下膘怕,文件夾命名為go控淡,當(dāng)然這個(gè)可以自己定義命名和路徑,go文件夾內(nèi)創(chuàng)建三個(gè)文件夾分別為src
pkg
bin
環(huán)境配置:根據(jù)使用的終端:zsh配置文件zshrc / bash配置文件.bash_profile / 或者更高級(jí)的環(huán)境配置文件etc/profile
export GOROOT=usr/local/go
export GOPATH=Users/user/go
export GOBIN=GOPATH/bin
export PATH=$GOROOT:$GOPATH/bin:$PATH
最后一句等價(jià)于export PATH=$GOROOT:$GOBIN:$PATH
之后source configFileName
配置環(huán)境生效
至此完成環(huán)境配置
下載編譯器LiteIDE(這個(gè)看自己愛好抹缕,有很多功能很棒的編譯器随抠,這個(gè)使用起來可能相對(duì)比較方便)
接下來就可以進(jìn)行g(shù)o project的書寫了
Helloworld
慣例helloworld:
package main
// 負(fù)責(zé)打印的包
import "fmt"
func main() {
fmt.Println("Hello World!") // Hello World!
}
func main()
這是必須的红伦,一個(gè)項(xiàng)目尊流,或者你寫的一段代碼,沒有main函數(shù)是沒有辦法編譯的玛歌,否則會(huì)報(bào)錯(cuò)
在LiteIDE中(別的暫時(shí)沒使用過昧港,還不清楚),編譯的或者保存或者使用快捷鍵command+i
時(shí)會(huì)自動(dòng)規(guī)范化自己的代碼支子,如果有語法錯(cuò)誤規(guī)范化的時(shí)候會(huì)拋出錯(cuò)誤
至此完成環(huán)境搭建并初步了解
基礎(chǔ)知識(shí)
go內(nèi)置關(guān)鍵字(內(nèi)置方法函數(shù)):
break default func interface select
case defer go map struct
chan else goto package switch
const fallthrough if range type
continue for import return var
注釋方法
- //:?jiǎn)涡凶⒁?/li>
- /* */:多行注釋
go程序一般結(jié)構(gòu)
go程序通過
package
來組織的只有package名稱為main的包可以包含main函數(shù)
一個(gè)可執(zhí)行程序有且僅有一個(gè)main包
通過
import
關(guān)鍵字來導(dǎo)入其他非main包通過
const
關(guān)鍵字來進(jìn)行常量定義通過在函數(shù)體外部使用
var
關(guān)鍵字來進(jìn)行全局變量的聲明與賦值通過
type
關(guān)鍵字來進(jìn)行結(jié)構(gòu)(struct
)或接口(interface
)的聲明通過
func
關(guān)鍵字來進(jìn)行函數(shù)的聲明
代碼順序
package
放在所有代碼之前
接下來是包的導(dǎo)入
如果有常量接下來定義常亮
再接著是全局變量的聲明
接著是一般類型的聲明
接著是結(jié)構(gòu)的聲明
接口的聲明
函數(shù)的書寫
可見性規(guī)則
go語言中使用大小寫來決定該常亮创肥、變量、類型值朋、接口叹侄、結(jié)構(gòu)或函數(shù)是否可以被外部調(diào)用:
函數(shù)名首字母小寫即為private
函數(shù)名首字母大寫即為public
可以確定的是只要我們調(diào)用其他包中的函數(shù),那么這些函數(shù)的首字母一定為大寫
包名的省略調(diào)用
// 可以重命名引用的包昨登,使用.即為省略趾代,可直接使用包內(nèi)方法
import . "fmt"
func main() {
// 這個(gè)時(shí)候可以直接使用方法
Println("hello world!")
}