Go á syntax ááẠPython áá¬áá¬á
áá¬ážá០áá»á±ážáá°áá¬ážáá±á¬ á¡áá»áá¯á·áá±á¬ C language á á¡áá»áœááºážááááºááŸááá±á¬ ááŒááºá
ááºáá»á¬ážá¡áá±á«áº á¡ááŒá±áá¶áá¬ážáááºá áá¬áá¬á
áá¬ážááẠá¡ááœááºááá¯áá±á¬ááºážáá±á¬áºáááºáž áá¯ááºááẠáááºááŸá¯áá¬ážáááºááẠááœááºáá°áááºá Go áá¯ááºááᯠvirtual machine ááá¯á¡áá¯á¶ážáááŒá¯áá² áá°áááºážá¡ááá¯ááºážáááºáááºááá·áº stand-alone binary executables áá»á¬ážá¡ááŒá
Ạá
á¯á
ááºážáá¬ážááẠ(profileingá debugging ááŸáá·áº á¡ááŒá¬ážáá±á¬ runtime problem detection subsystems áá»á¬ážá¡ááŒá
Ạáá±á«ááºážá
ááºáá¬ážáááºá
ááá±á¬áá»ááºááᯠá¡ááŒáá¯ááºááœááºááŒá°áá¬á á®á ááºááŒááºážááŸáá·áº parallel-executed áááºážáááºážáá»á¬ážááŒá¬áž á¡ááŒááºá¡ááŸááºá¡áá»áá¯ážáááºáá±á¬ááºááŸá¯á¡ááœáẠá¡á±á¬áºááá±áá¬á¡ááá·áºáááºážáááºážáá»á¬áž áá¶á·ááá¯ážáá±ážááŒááºážá¡áá«á¡ááẠmulti-threaded programming ááŸáá·áº multi-core á áá áºáá»á¬ážááœáẠáááá±á¬ááºáá±á¬áááºáááºááŸá¯áá»á¬ážááᯠáá»ááºá ááá»á á±ááẠáááŠážááœáẠááá±á¬áá»ááºááᯠáá®ááœááºáá²á·áááºá áá¬áá¬á áá¬ážááẠááœá²áá±áá»áá¬ážáá±ážáá±á¬ áááºááá¯áá®ááááºááá¯á·ááŒááºážá០áááºáááºáá¬ážáá±á¬ á¡áá¬á¡ááœááºááá¯áááºáž áá±ážáá±á¬ááºááŒá®áž á¡ááŸáá¯ááºá á¯áá±á¬ááºážáá°á¡á¬áž á¡áá¯á¶ážááŒá¯ááá¯ááºá áœááºážááᯠáá±á¬ááºáá¶á·áá±ážáááºá
á¡ááá
- crypto/tls áááºáá±á·áá»áºááœáẠáá¯á¶ááŸááºá¡á¬ážááŒáá·áº áááá¯ááá¯áá±á¬áá¶á·ááá¯ážááŸá¯ááᯠááœáá·áºáá¬ážáááºá
TLS á.á . Ed25519 áá áºáá»á áºáááºáááºááŸááºáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ááŒáá·áº áááºáá±á·ááºá»á¡áá Ạ"crypto/ed25519" ááᯠáá±á«ááºážááá·áºáá²á·áááºá - ááœááá¶áá«ááºáá»á¬áž (á¥ááᬠ0b101)á octal (0o377)á á áááºáá°ážááẠ(2.71828i) ááŸáá·áº hexadecimal floating point (0x1p-1021) ááŸáá·áº "_" á¡áá¹ááá¬ááᯠáááºááŸááºááẠááááºážááááááŸá±á·áááºá¡áá áºáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ ááŸáá·áº "_" á á¬áá¯á¶ážááᯠááááºážáá»á¬ážá¡ááŒááºááŒáá·áº ááá¯ááºážááŒá¬ážááẠá áœááºážááẠá¡áá»á¬ážá¡ááŒá¬áž (1_000_000);
- ââ¹â¹â ááŸáá·áº ââºâºâ á¡á±á¬áºááá±áá¬áá»á¬ážááᯠá¡áá¯á¶ážáááŒá¯áá® áááá¯á¡ááºáá² uint á¡áá»áá¯ážá¡á á¬ážááá¯á· ááŒá±á¬ááºážáá²ááŒááºážáá»á¬ážááᯠááŸá±á¬ááºááŸá¬ážááá¯ááºá á±ááá·áº ááá¯ááºážááœááºážáá¶áá¬ážáá±á¬ áá±á¬ááºáá¬áá»á¬ážáᬠá¡áá¯á¶ážááŒá¯ááŒááºážá¡áá±á«áº ááá·áºáááºáá»ááºá¡á¬áž áááºááŸá¬ážááá¯ááºáá«áááºá
- Illumos ááááºáá±á¬ááºáž (GOOS=illumos) á¡ááœáẠáá¶á·ááá¯ážááŸá¯ áááºááá·áºáá¬ážáááºá FreeBSD (10) ááŸáá·áº macOS (11.2 âEl Capitanâ) á á¡áááºážáá¯á¶ážáá¬ážááŸááºážáá»á¬ážá¡ááœáẠááá¯á¡ááºáá»ááºáá»á¬ážááᯠááá¯ážááŒáŸáá·áºáá¬ážáááºá
- GOPATH áá¡ááŒá¬ážááœá±ážáá»ááºá
áá¬á¡ááŒá
áºá¡áá¯á¶ážááŒá¯ááá¯ááºááá·áº module á
áá
áºá¡áá
áºááááºáááºááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯á Go 1.13 ááœáẠááááºá ááŒá±áá¬áá¬ážáá±á¬ á¡á
á®á¡á
ááºáá»á¬ážááŸáá·áº ááá·áºáá»ááºáááºááŒá
áºááŒá®ážá á€á
áá
áºááᯠáá¯á¶áá±á¡á¬ážááŒáá·áº ááœáá·áºáá¬ážááŒááºáž ááá¯ááºáá² GO111MODULE=ááŒá±á¬ááºážááœá²ááŒá±á¬ááºážááá¯ááºááŸá¯á¡áá±á«áº ááá¯á·ááá¯áẠáá±á¬áºáá»á°ážáá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬ááºá¡áá¯á¶ážááŒá¯ááá·áº áááºá
ááºá¡ááŒá±á¬ááºážá¡áá¬ááᯠá¡áá¯á¶ážááŒá¯ááŸá¯ ááá¯á¡ááºáá«áááºá áá±á¬áºáá»á°ážá
áá
áºá¡áá
áºááœáẠáá±á«ááºážá
ááºáá¬ážááŸááºážáá¶á·ááá¯ážááŸá¯á áááºáá±á·áá»áºáá±ážááá¯á·ááá¯ááºááŸá¯ááŸáá·áº ááŸá®ááá¯ááŸá¯á
á®áá¶ááá·áºááœá²ááŸá¯ááá¯á·ááᯠááŒáŸáá·áºáááºáá±ážáá«áááºá áá±á¬áºáá»á°ážáá»á¬ážááŒáá·áºá developer áá»á¬ážááẠGOPATH áá
áºáááºá¡ááœááºáž á¡áá¯ááºáá¯ááºááŒááºážááŸáá·áº áááºá
ááºááŒááºáž áááŸááá±á¬á·áá²á áá¬ážááŸááºážá¡ááá¯áẠááŸá®ááá¯ááŸá¯ááᯠááŒááºáá¬ážá
áœá¬ áááºááŸááºááá¯ááºááŒá®áž áááºáá«ááá²áá² áááºáá±á¬ááºááŸá¯áá»á¬ážááᯠáááºáá®ážááá¯ááºáááºá
ááááºáá¯ááºáá±ááŸá¯áá»á¬ážááŸáá·áºááá°áá²á áááºážááẠGOPATH/src áááºážááœáŸááºááœááºááŸáááá·áºá¡áá« á¡áá«á¡ááẠgo.mod ááá¯ááºááᯠáááºááŸáá¡áá¯ááºáá¯ááºáá±áá±á¬áááºážááœáŸáẠááá¯á·ááá¯áẠááááááºážááœáŸááºááœáẠááŸááá±áá±á¬á¡áá«ááœááºá á áá áºá¡áá áºá á¡ááá¯á¡áá»á±á¬ááºá¡ááá®áá±ážááŸááºážááẠááá¯á¡áá¯ááºáá¯ááºáá«áááºá áááºáááºážáá»áẠááŒá±á¬ááºážáá²ááŸá¯á¡áá áºáá»á¬ážááᯠááá·áºááœááºážáá¬ážáááº- á¡áá»á¬ážáá°ááŸá¬ áááºáá±á¬ááºááá¯ááºáá±á¬ áá±á¬áºáá»á°ážáá»á¬ážá áááºážááŒá±á¬ááºážáá»á¬ážááᯠáááºááŸááºáá±ážááá·áº GOPRIVATE ááŸáá·áº go.sum ááá¯ááºááœáẠáá±á¬áºááŒáá¬ážáá±á¬ áá±á¬áºáá»á°ážáá»á¬ážá¡ááœáẠchecksum áá±áá¬áá±á·á áºááá¯á· áááºáá±á¬ááºááœáá·áºááá·áºáááºáá»ááºáá»á¬ážááᯠáááºááŸááºáá±ážááá·áº GOSUMDBá
- áá°áááºážá¡á¬ážááŒáá·áº "go" á¡áááá·áºááẠáá±á¬áºáá»á°ážáá»á¬ážááᯠáááºáá±á¬ááºááŒá®áž Google (proxy.golang.orgá sum.golang.org ááŸáá·áº index.golang.org) á០ááááºážááááºážáá¬ážáá±á¬ module mirror ááŸáá·áº checksum áá±áá¬áá±á·á ááᯠá¡áá¯á¶ážááŒá¯á áááºážááá¯á·á ááá¬ááááᯠá á áºáá±ážáááºá
- â//go:binary-only-packageâ áá¯ááºááœáẠáááºáá±á·áá»áºáá áºáá¯áááºáá±á¬ááºááŒááºážá¡ááœáẠbinary package áá»á¬ážáᬠáá¶á·ááá¯ážááŸá¯ááᯠáááºááá¯ááºážááá¯ááºáá«ááŒá®á
- áá±á¬áºáá»á°ážá¡á¬áž áá±á¬ááºáá¯á¶ážááŒá¯ááŒááºááááºážááááºážááŸá¯áá¯ááºáá±ááŸá¯ááá¯á· á¡ááºááááºáá¯ááºááá·áºáááºáᯠááœáŸááºááŒáá±á¬ "go get" ááá±á¬ááºáááºááœá² "@patch" á áá±á¬ááºáááºááœá²ááᯠáá¶á·ááá¯ážáá±ážáááºá ááá¯á·áá±á¬áº áááºááŸá á¡ááŒá®ážá á¬áž ááá¯á·ááá¯áẠá¡áá±ážá á¬ážáá¬ážááŸááºážááᯠáááŒá±á¬ááºážáá²áá²á
- áááºážááŒá áºááááºážáá»á¯ááºááŸá¯á áá áºáá»á¬ážá០áá±á¬áºáá»á°ážáá»á¬ážááᯠááŒááºáááºááá°ááá·áºá¡áá«á "go" á¡áááá·áºááẠááá¯á¡áá« ááá¯ááŸá±á¬ááºááŸá¯á០áááºáá¬áá±áá¬ááŸáá·áº pseudo-áá¬ážááŸááºážáá¶áá«ááºáá»á¬ážááŸáá·áº ááá¯ááºáá®á á±ááẠááŒáá¯ážáááºážáá±ááá·áº áá¬ážááŸááºážá á¬ááŒá±á¬ááºážááœáẠáá±á¬ááºáááºá á áºáá±ážááŸá¯áá áºáá¯ááᯠáá¯ááºáá±á¬ááºáá±ááŒá®ááŒá áºáááºá
- áá¶á·ááá¯ážáá°áá®ááŸá¯ ááá¯á·ááᯠááá·áºááœááºážáá²á·áááºá
á¡ááŸá¬ážá á áºáá±ážááŒááºážá Standard error handlers áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááœáá·áºáá±ážáá±á¬ wrappers áá»á¬ážáááºáá®ážááŒááºážá¡á¬ážááŒáá·áº (error wrapping)á á¥ááá¬á¡á¬ážááŒááºá·,á¡ááŸá¬áž áááºážáááºážáá áºáá¯áá±ážááŒááºážááŒáá·áº "e" ááẠerror "w" ááᯠáááºáá¬ážááá¯ááºáááºááááŒáẠ, "w" ááŒááºáá¬á áááá¯ááááºááœáẠá¡ááŸá¬ážá¡ááœááºáž "e" ááŸáá·áº "w" ááŸá áºáá¯á áá¯á¶ážááᯠáááŸáááá¯ááºááŒá®áž á¡ááŸá¬ážá¡ááœááºáž "w" áá±á«áºááœáẠá¡ááŒá±áá¶á áá¯á¶ážááŒááºáá»ááºáá»á¬ážááᯠááŒá¯áá¯ááºáá¬ážáá±á¬áºáááºáž "e" ááẠ"w" ááá¯á· áááºáá±á¬ááºážá¡ááŒá±á¬ááºážá¡áá¬ááᯠáá¶á·ááá¯ážáá±ážááẠááá¯á·ááá¯áẠááœá²ááŒá¬ážá áœá¬ áá¬áá¬ááŒááºáá±ážáá«áááºá - runtime á¡á áááºá¡ááá¯ááºážáá»á¬ážá á áœááºážáá±á¬ááºáááºááᯠááá¯ááá¯áá±á¬ááºážááœááºá¡á±á¬áẠááŒá¯áá¯ááºáá¬ážááŒá®áž (á¡ááŒááºááŸá¯ááºáž 30% á¡áá ááá¯ážáá¬áááºááᯠáááááŒá¯áááááº) ááŸáá·áº áááºáááºááŸá¯á áá áºááá¯á· áááºááá¯áá®ááᯠááá¯ááá¯ááŒááºážáááºá áœá¬ ááŒááºáááºáá±á¬ááºááŸáá á±áá²á·ááẠ(ááááºáá áá«ážáááá Ạááá¯á·ááá¯áẠááá¯á·áááºááá¯ááŒá®ážáá±á¬áẠáááºááá¯áá®ááᯠááŒááºáá±ážáá²á·áá±á¬áºáááºáž ááᯠáá»ááºáá»ááºážáááºá á¡ááŸáá¯ááºá¡ááœááºá¡á á¬ážááá¯áá»áŸá±á¬á·áá»ááŒá®ážáá±á¬ááº) á
source: opennet.ru