Go Handledning
Komma igång med Go
Sök…
Anmärkningar
Go är ett öppen källkod, sammanställt, statiskt typspråk i traditionen Algol och C. Det har funktioner som skräpsamling, begränsad strukturell typning, minnessäkerhetsfunktioner och enkel att använda CSP- stil samtidigt programmering.
versioner
Den senaste versionen av den stora versionen är i fetstil nedan. Hela releasehistoriken hittar du här .
Version | Utgivningsdatum |
---|---|
1.8.3 | 2017/05/24 |
1.8.0 | 2017/02/16 |
1.7.0 | 2016/08/15 |
1.6.0 | 2016/02/17 |
1.5.0 | 2015/08/19 |
1.4.0 | 2014/12/04 |
1.3.0 | 2014/06/18 |
1.2.0 | 2013/12/01 |
1.1.0 | 2013/05/13 |
1.0.0 | 2012-03-28 |
Hej världen!
Placera följande kod i ett filnamn hello.go
:
package main
import "fmt"
func main() {
fmt.Println("Hello, 世界")
}
När Go
är korrekt installerat kan detta program sammanställas och köras så här:
go run hello.go
Produktion:
Hello, 世界
När du är nöjd med koden kan den sammanställas till en körbar genom att köra:
go build hello.go
Detta skapar en körbar fil som är lämplig för ditt operativsystem i den aktuella katalogen, som du sedan kan köra med följande kommando:
Linux, OSX och andra Unix-liknande system
./hello
Windows
hello.exe
Obs : De kinesiska karaktärerna är viktiga eftersom de visar att Go-strängar lagras som skrivskyddade bitgrupper.
FizzBuzz
Ett annat exempel på "Hello World" -program är FizzBuzz . Detta är ett exempel på en FizzBuzz-implementering. Mycket idiomatisk Gå i spel här.
package main
// Simple fizzbuzz implementation
import "fmt"
func main() {
for i := 1; i <= 100; i++ {
s := ""
if i % 3 == 0 {
s += "Fizz"
}
if i % 5 == 0 {
s += "Buzz"
}
if s != "" {
fmt.Println(s)
} else {
fmt.Println(i)
}
}
}
Lista Go Miljövariabler
Miljövariabler som påverkar go
verktyget kan visas via kommandot go env [var ...]
:
$ go env
GOARCH="amd64"
GOBIN="/home/yourname/bin"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/yourname"
GORACE=""
GOROOT="/usr/lib/go"
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build059426571=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
Som standard skrivs det ut listan som ett skalskript; Men om ett eller flera variabla namn ges som argument skriver det ut värdet på varje namngivna variabel.
$go env GOOS GOPATH
linux
/home/yourname
Ställa in miljön
Om Go inte är förinstallerat i ditt system kan du gå till https://golang.org/dl/ och välja din plattform för att ladda ner och installera Go.
För att skapa en grundläggande Go-utvecklingsmiljö behöver bara några av de många miljövariabler som påverkar go
verktygets beteende (se: Lista Go-miljövariabler för en fullständig lista) ställas in (vanligtvis i ditt ~/.profile
fil, eller motsvarande på Unix-liknande OS).
GOPATH
Liksom system- PATH
miljövariabeln är Go path en :
( ;
på Windows) avgränsad lista över kataloger där Go kommer att leta efter paket. go get
verktyget kommer också att ladda ner paket till den första katalogen i den här listan.
GOPATH
är där Go installerar tillhörande mappar för bin
, pkg
och src
behövs för arbetsytan:
-
src
- placering av källfiler:.go
,.c
,.g
,.s
-
pkg
- har sammanställt.a
filer -
bin
- innehåller körbara filer byggda av Go
Från Go 1.8 och framåt kommer GOPATH
miljövariabeln att ha ett standardvärde om den inte är inställd. Det är standard $ HOME / go på Unix / Linux och% USERPROFILE% / go på Windows.
Vissa verktyg antar att GOPATH
kommer att innehålla en enda katalog.
GOBIN
Bin katalog där go install
och go get
kommer att placera binärer efter att bygga main
paket. I allmänhet är detta inställt på någonstans på system PATH
så att installerade binära filer kan köras och upptäcks enkelt.
GOROOT
Det här är platsen för din Go-installation. Det används för att hitta standardbibliotek. Det är mycket sällsynt att behöva ställa in denna variabel eftersom Go bäddar in byggvägen i verktygskedjan. Inställning av GOROOT
behövs om installationskatalogen skiljer sig från byggkatalogen (eller det värde som ställts in vid byggandet).
Åtkomst till dokumentation offline
Kör kommandot för full dokumentation:
godoc -http=:<port-number>
För en rundtur i Go (rekommenderas starkt för nybörjare på språket):
go tool tour
De två kommandona ovan kommer att starta webbservrar med dokumentation som liknar vad som finns online här respektive här .
För snabbreferenskontroll från kommandoraden, t.ex. för fmt. Skriv ut:
godoc cmd/fmt Print
# or
go doc fmt Print
Allmän hjälp finns också från kommandoraden:
go help [command]
Running Go online
Go Playground
Ett litet känt Go-verktyg är Go Playground . Om man vill experimentera med Go utan att ladda ner det kan de enkelt göra det helt enkelt genom. . .
- Besöker lekplatsen i deras webbläsare
- Ange deras kod
- Klicka på "Kör"
Dela din kod
Go Playground har också verktyg för delning; om en användare trycker på knappen "Dela" kommer en länk (som den här ) att genereras som kan skickas till andra för att testa och redigera.