go語言介紹
# 1 誕生於 2009年,10年的時間,很是新的語言,自然支持併發,很新,生態不完善
-python:1989年
-java:1990年
-2005年,以前的語言,對併發支持不是特別好
# 2 輪子少(生態),django,flask beego(中國人寫的,orm都有),gin(集成gorm),兩三個連mysql的模塊
# 3 google出的 python,java:sun公司,甲骨文收購了 c#:微軟
#4 Go是靜態 強類型語言,是區別於解析型語言的編譯型語言。
-編譯後執行---》編譯成可執行文件 (java編譯成字節碼--運行在jvm上,每臺機器都要跑一個jvm,300m內存)
-解釋型:直接運行在解釋器上,php,js,python
-誇平臺性如何?java:一處編碼,到處運行,go:誇平臺編譯(交叉編譯),能夠在windows平臺編譯出linux下的可執行文件
-在linux上裝過python,源碼包下載,解壓,make && make install gcc編譯的,當前平臺的能夠執行文件
-go寫的程序,只須要跨平臺編譯完,拿到不通平臺上,不須要安裝任何依賴
-強類型:go,python是強類型,不容許不一樣類型運算 'aa'+1 報錯
-弱類型:容許不通類型運算
# 5 跨平臺的編譯型語言
# 6 有垃圾回收的機制(gc) python--》gil
# 7 支持面向對象和麪向過程的編程模式(go不是一個純粹的面嚮對象語言,面向對象的特性它都有:繼承,封裝,多態)
# 8 2009年推出 12年穩點版本 1.5——實現的架構變化,同時保留了和舊版本的兼容性,之後的go,徹底實現了go本身寫的
2020年 1.14版本 ---》規劃:go 2.0之後,會有大更新:支持泛型,異常處理。。。
# 9 Go語言應用:google,基本上全部互聯網都會有go,不是在用go,就是在轉go的路上
# 10 go語言爲何筆記火:docker火,谷歌(k8s),區塊鏈(第一款開源的區塊鏈項目,用go寫的),國內互聯網公司愛用,性能高,語法簡介,上手快,go特別適合服務端開發(微服務的開發)
# Go語言發展前景:統治下一個十年
go開發包下載
安裝包下載地址爲:https://golang.org/dl/。
若是打不開可使用這個地址:https://golang.google.cn/dl/。
命令介紹
直接在終端中輸入 go help 便可顯示全部的 go 命令以及相應命令功能簡介,主要有下面這些:
build: 編譯包和依賴
clean: 移除對象文件
doc: 顯示包或者符號的文檔
env: 打印go的環境信息
bug: 啓動錯誤報告
fix: 運行go tool fix
fmt: 運行gofmt進行格式化
generate: 從processing source生成go文件
get: 下載並安裝包和依賴
install: 編譯並安裝包和依賴
list: 列出包
run: 編譯並運行go程序
test: 運行測試
tool: 運行go提供的工具
version: 顯示go的版本
vet: 運行go tool vet
配置
go env會產生如下信息:
GO111MODULE= # 沒有值或者off,表示沒有開啓go mode模式,用的就是gopath模式
GOROOT=c:\go # go開發包的安裝路徑,確認好是否對
GOPATH=C:\Users\辜友銀\go # 代碼存放路徑,確認好是否對,之後你的go代碼都放在這個文件夾下
# go mode模式:代碼能夠放在任意路徑
set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\辜友銀\AppData\Local\go-build
set GOENV=C:\Users\辜友銀\AppData\Roaming\go\env
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\辜友銀\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=c:\go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=c:\go\pkg\tool\windows_amd64
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
修改配置
set GOPATH=E:\go # 改了以後,代碼必須放在E:\go\src下面
golandIDE工具下載
IDE 下載地址:http://www.jetbrains.com/go/?fromMenu
編譯並執行命令
package main //表示聲明main包,每個go代碼的第一行必須寫這個
import "fmt"
func main(){
fmt.Println("hellword")
fmt.Println("hello word")
}
// 程序的執行入口,是main包下的main函數
//一個go項目只能有一個main函數
命令
# go命令
go build hello.go # 編譯成.exe的文件
go run hello.go # 編譯並執行,會產生一個.exe的執行文件。
# 在golang中執行
右鍵,選擇,run