Teknologian jakaminen

Go-kielen esittely (1)

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Go Modules -riippuvuuspakettien hakumekanismi
  • Ladatut kolmannen osapuolen riippuvuudet tallennetaan $GOPATH/pkg/mod Alas
  • Go installin luoma suoritettava tiedosto tallennetaan $GOPATH/binAlas
  • Riippuu hakujärjestyksestä:
    • Työlista
    • $GOPATH/pkg/mod
    • $GOPATH/src

1. Go-kielen perusteet

1. Tunnisteet ja avainsanat

1.1 Nimeämismenetelmä

Go-muuttujien, vakioiden, mukautettujen tyyppien, pakettien ja funktioiden nimeämisen on noudatettava seuraavia sääntöjä:

Ensimmäinen hahmo voi olla任意Unicode字符tai下划线

Muut osat kuin ensimmäinen merkki voivat olla Unicode-merkkejä, alaviivoja tai numeroita

Nimen pituutta ei ole rajoitettu

Teoriassa nimessä voi olla kiinalaisia ​​merkkejä tai jopa kaikkia kiinalaisia ​​merkkejä, mutta käytännössä älä tee tätä.

1.2 Avainsanat
taukooletuksenafunckäyttöliittymävalitse
tapauslykätämennäkarttastruct
chanmuumenepakettivaihtaa
konstjosaluetyyppijatkaa
vartentuontipalataputoaminenvar
1.3 Varatut sanat

•vakio

true false iota nil

• tietotyyppi

int int8 int16 int32 int64

uint uint8 uint16 uint32 uint64

float32 float64

complex128 complex64

byte rune string

bool error uintptr

•toiminto

make len cap new append copy

close delete complex real imag panic recover

1.4 Muuttujat
1.4.1 Muuttujan tyyppi
tyyppiSiirry muuttuviin tyyppeihinfmt lähtö
kokonaislukuint int8 int16 int32 int64 uint uint8 uint16 uint32 uint64%d
liukulukufloat32 float64%f %e %g
monikkocomplex128 complex64%v
booleanbool%t
osoitinuintptr%d
Lainatamap slice channel%v
tavubyte%d
mikä tahansa hahmorune%d
merkkijonostring%s
virheerror%v
1.4.2 Muuttujan alustus
  • Jos sitä ei ole nimenomaisesti alustettu ilmoituksen jälkeen, numeerinen tyyppi alustetaan O:ksi, merkkijonotyyppi tyhjäksi merkkijonoksi ja Boolen tyyppi alustetaan epätosi.

    Viitetyypit, funktiot, osoittimet ja rajapinnat alustetaan nollaan

    • var a string = "Kiina"
    • var a,b int=3,7
    • var a="china", kirjoita päätelmä
    • var a,b = "Kiina", 7
  • Funktioiden sisällä olevat muuttujat (ei-globaalit muuttujat) voidaan ilmoittaa ja alustaa: =

    • a:=3
  • Alaviiva tarkoittaa anonyymiä muuttujaa

    • _=2+4
  • Anonyymit muuttujat eivät vie nimiavaruutta eivätkä varaa muistia, joten niitä voidaan käyttää uudelleen

1,5 vakiota

Vakioille on annettava arvo, kun niitä määritellään, eikä niiden arvoa voi muuttaa ohjelman ollessa käynnissä.

const PI float32=3.14

const(
	PI=3.14
	E=2.71
)

const(
  a=100
  b	//100,跟上一行的值相同
  c	//100,跟上一行的值相同
)

const(
	a = iota	//0
  b					//1
  c					//2
  d					//3
)

const(
	a = iota	//0
  b					//1
  _					//2
  d					//3
)

const(
	a = iota	//0
  b	= 30		//30
  c	= iota	//2
  d					//3
)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
1.6 Literaalit

Kirjaimellinen: Muuttujan nimi ei näy, mutta arvo näkyy suoraan.Perustyyppien literaalit vastaavat vakioita

Eri tietotyyppejä ei voida verrata, lukuun ottamatta literaaleja

fmt.Printf("9tn"04 ==4.00//用到了整型字面量和浮点型字面量
fmt.Printf("%vn".4i//虚数字面量0.4i
fmt.Printf("%tn", "u4f17'=='//Unicode和rune字面量
fmt.Printf("Hello nWorldn!n"//字符串字面量
  • 1
  • 2
  • 3
  • 4
1.7 Muuttuva laajuus
globaaleja muuttujia
var (
  A=3	//全局变量,大写字母开头,所有地方都可以访问,跨package访问时需要带上package名称
	b=4	//全局变量,小写字母开头,本package内都可以访问
  • 1
  • 2
  • 3
  • 4
paikalliset muuttujat
func fool{
	b:=5 //局部变量,仅本函数内可以访问。内部声明的变量可以跟外部声明的变量有冲突,以内部的为准
  
	{
  	b:=6	//仅小圈定的作用域内可以访问,可以跟外部的变量有冲突
	}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
1.8 Kommentit ja goddoc
1.8.1 Kommenttien muoto
  • Yhden rivin kommentit.Aloita //
  • Monirivisiä kommentteja. Useat peräkkäiset rivit alkavat // tai käytä /* ennen kappaletta ja */ kappaleen lopussa.
  • Monirivisten kommenttien väliin ei voi ilmestyä tyhjiä rivejä
  • HUOMAA: Huomiota herättävä, TODO: Tarvitsee optimoinnin tulevaisuudessa, Vanhentunut: On erittäin suositeltavaa olla käyttämättä muuttujia tai funktioita.
  • Voit kirjoittaa go-koodin lisäämällä sisennyksen kommenttirivin eteen.
1.8.2 Kommenttien asema
  • Paketin kommentit. Paketin yläpuolella xxx. Paketti tarvitsee vain kirjoittaa paketin kommentit yhteen paikkaan, yleensä omaan doc.go-tiedostoon.

    Paketissa on vain yksi rivi pakettixxx ja kommentit.

  • Rakennekommentit.edellä tyyppi xxx struct

  • Toimintojen kommentit.funktion yläpuolella xxx()

  • Rivien kommentit.rivin yläpuolella tai oikealla puolella

1.8.3 mene doc
  • go doc on go:n mukana tuleva komento
  • mene doc sisäänkäyntiluokka/util
1.8.4 godoc
  • godoc voi viedä projektin koodin huomautusasiakirjan verkkoversion.
    • Sinun on asennettava go ensin get golang.org/x/tools/cmd/godoc
    • Aloita http:godoc -http=:6060
    • Siirry selaimella: http://127.0.0.1:6060/pkg/go-course/entrance class