Technology sharing

Introductio ad Linguam Ite (1)

2024-07-12

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

Ite Modules dependentia sarcina mechanism quaerere
  • Downloaded tertia-pars clientelas reponuntur in $GOPATH/pkg/mod Descende
  • Exsecutivum documentum generatur ab go install repositum in $GOPATH/binDescende
  • Inquisitionis ordo dependet:
    • Opus album
    • $GOPATH/pkg/mod
    • $GOPATH/src

1. Basics of Go lingua

1.Identifiers et keywords

1,1 nominans modum

Nominatio variabilium, constantium, consuetudinum, generum, fasciculorum, et functionum, sequi debent regulas sequentes:

Prima ratio potest任意Unicode字符or *下划线

Partes praeter primam rationem esse forms moribus sapien vel numeris

Non est terminus longitudinem nominis

Theoretice nomen characteres in eo habere potest Sinenses, vel omnes characteres Sinenses, sed in praxi, hoc non faciunt.

1.2 Keywords
confractusdefaltamfuncinterfaceeligere
casusdiffergomapstruct
chanaliudgatasarcinaswitch
constsirangetypecontinue
for*importreditusintercidetvar
1.3 verba ligula

•constant

true false iota nil

• genus notitia

int int8 int16 int32 int64

uint uint8 uint16 uint32 uint64

float32 float64

complex128 complex64

byte rune string

bool error uintptr

•officium

make len cap new append copy

close delete complex real imag panic recover

1.4 Variabiles
1.4.1 variabilis
typeIte variabilesfmt output
integerint int8 int16 int32 int64 uint uint8 uint16 uint32 uint64%d
fluctueturfloat32 float64%f%e %g
pluralcomplex128 complex64%v
Booleanbool%t
regulauintptr%d
Quotemap slice channel%v
bytebyte%d
quis characterrune%d
filumstring%s
errorerror%v
1.4.2 Variabilis initialization
  • Si non explicite post declarationem initialized, typum numericum initialis est ad O, chorda chordae vacuae initialis est, et typus Boolean falsae initialis redditur.

    Genera, munera, indicium, et machinae relationes ad nilum initialized sunt

    • var filum = "Sina"
    • var a,b int=3,7
    • var a="china", genus illationis
    • var a, b="china", 7
  • Variabiles (variabilitates non-globales) intra functiones declarari et initialized possunt per: =

    • a:=3
  • Underscore indicat anonymous variabilis

    • _=2+4
  • Anonymi variabiles spatio nominali non tenent nec memoriam collocant, ut reddi possunt

1.5 constantes

Constantia valorem definire debent, eorumque valor mutari non potest dum progressio currit.

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 Literals

Litteralis: Nomen variabile non apparet, sed valor directe apparet.Litterae fundamentales rationes constantibus aequiparantur

Aliae notitiae rationes comparari non possunt, literalis exceptis

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 variabilis scope
global variabiles
var (
  A=3	//全局变量,大写字母开头,所有地方都可以访问,跨package访问时需要带上package名称
	b=4	//全局变量,小写字母开头,本package内都可以访问
  • 1
  • 2
  • 3
  • 4
loci variables
func fool{
	b:=5 //局部变量,仅本函数内可以访问。内部声明的变量可以跟外部声明的变量有冲突,以内部的为准
  
	{
  	b:=6	//仅小圈定的作用域内可以访问,可以跟外部的变量有冲突
	}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
1.8 Comments and godoc
Forma commentaria 1.8.1
  • Unius versus comment.Incipere //
  • Multi- versus comment. Lineae continuae multiplices incipiunt a //, vel uti ante paragraphum et */ in fine paragraphi.
  • Non potest apparere inter lineas vestis multi-linea comments
  • NOTE: Attentio vellicatio, TODO: Optio eget in futuro, Deprecatus: Enixe commendatur ne variabilibus vel functionibus utatur.
  • Potes scribere codicem ire addendo incisum ante lineam comment.
1.8.2 Positio commentaria
  • Involucrum commentum. Involucrum supra xxx. Involucrum solum in uno loco scribere commentarios sarcinas desiderat, plerumque in doc.go dedicata.

    Unica linea est tantum fasciculi et commentarii de sarcina.

  • Commentaria in structuram.supra genus XXX STRUCTUS

  • Munus ineo.func supra XXX ()

  • Acies comment.supra vel ius biremi

1.8.3 ire doc
  • ite doc est mandatum quod est cum go
  • ire doc introitus genus / utilitas
1.8.4 godoc
  • Godoc versionem textus annotationis pro codice exertus exportare potest.
    • Opus est ut instituas primum vade golang.org/x/tools/cmd/godoc
    • Satus http: godoc -http =: (LX)
    • Utere navigatro ad visitandum: http://127.0.0.1:6060/pkg/go-course/ introitus class