ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΡΠ΅Π»ΠΈΠ· ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Go 1.16, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Google ΠΏΡΠΈ ΡΡΠ°ΡΡΠΈΠΈ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΊΠ°ΠΊ Π³ΠΈΠ±ΡΠΈΠ΄Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΠΎΡΠ΅ΡΠ°ΡΡΠ΅Π΅ Π²ΡΡΠΎΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌΡΡ ΡΠ·ΡΠΊΠΎΠ² Ρ ΡΠ°ΠΊΠΈΠΌΠΈ Π΄ΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π°ΠΌΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΡ ΡΠ·ΡΠΊΠΎΠ², ΠΊΠ°ΠΊ Π»ΡΠ³ΠΊΠΎΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π°, Π±ΡΡΡΡΠΎΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ Π·Π°ΡΠΈΡΡΠ½Π½ΠΎΡΡΡ ΠΎΡ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ BSD.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Go ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΏΡΠΈΠ²ΡΡΠ½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°Ρ ΡΠ·ΡΠΊΠ° Π‘ΠΈ Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ Π·Π°ΠΈΠΌΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ ΠΈΠ· ΡΠ·ΡΠΊΠ° Python. Π―Π·ΡΠΊ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π»Π°ΠΊΠΎΠ½ΠΈΡΠ΅Π½, Π½ΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΊΠΎΠ΄ Π»Π΅Π³ΠΊΠΎ ΡΠΈΡΠ°Π΅ΡΡΡ ΠΈ Π²ΠΎΡΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΡΡΡ. ΠΠΎΠ΄ Π½Π° ΡΠ·ΡΠΊΠ΅ Go ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π² ΠΎΠ±ΠΎΡΠΎΠ±Π»Π΅Π½Π½ΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΡΠ΅ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ Π½Π°ΡΠΈΠ²Π½ΠΎ Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ (ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π½Π° ΡΡΠ°ΠΏΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΡΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ runtime-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²), ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠΎΠΏΠΎΡΡΠ°Π²ΠΈΠΌΠΎΠΉ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ Π½Π° ΡΠ·ΡΠΊΠ΅ Π‘ΠΈ.
ΠΡΠΎΠ΅ΠΊΡ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Ρ ΠΎΠ³Π»ΡΠ΄ΠΊΠΎΠΉ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΡΠ΄Π΅ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ , Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ. Π―Π·ΡΠΊ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° Π·Π°ΡΠΈΡΡ ΠΎΡ Π²ΡΡ ΠΎΠ΄Π° Π·Π° Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΡ Π±Π»ΠΎΠΊΠΎΠ² ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ±ΠΎΡΡΠΈΠΊΠ° ΠΌΡΡΠΎΡΠ°.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²Π°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ Π² Π²ΡΠΏΡΡΠΊΠ΅ Go 1.16:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°ΠΊΠ΅Ρ embed, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ². ΠΠ»Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΡΡΠΎΠΈΡΡ Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π½ΠΎΠ²Π°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° «//go:embed». ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ «//go:embed test.txt» ΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΠΎΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ «var f embed.FS» ΠΏΡΠΈΠ²Π΅Π΄ΡΡ Π² Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»Π° test.txt ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π½Π΅ΠΌΡ ΡΠ΅ΡΠ΅Π· Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡ «f». ΠΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ «s» ΠΈΠ· ΡΠ°ΠΉΠ»Π° version.txt ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ: import _ «embed» //go:embed version.txt var s string print(s)
- ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ΅ΠΏΠ΅ΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Ρ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Π²Π΅ΡΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΡΠ»Π° Π½Π° ΡΠΌΠ΅Π½Ρ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ GOPATH. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ GO111MODULE ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΡΡΠ°Π²Π»Π΅Π½Π° Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ «on» ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈ ΡΠ΅ΠΆΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΈΡ ΡΠ°ΠΉΠ»Π° go.mod Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΈΠ»ΠΈ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅. Π Π½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ±ΠΎΡΠΎΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ «go build» ΠΈ «go test», Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ go.mod ΠΈ go.sum, Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° «go install» ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Π²Π΅ΡΡΠΈΠΈ («go install example.com/[email protected]»). ΠΠ»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΡΡΠ°ΡΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ GO111MODULE Π½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ «auto». ΠΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ, ΡΡΠΎ 96% ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΡΠ»ΠΈ Π½Π° Π½ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
- ΠΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠ°. ΠΠ»Ρ Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π° 20-25% Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ Π½Π° 5-15% ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ.
- Π ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° inline-ΡΠ°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ Ρ ΡΠΎΠΊΡΠ°ΡΡΠ½Π½ΡΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠΈΠΊΠ»ΠΎΠ² «for», ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ (method values) ΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ ‘type switch’.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΈΡΡΠ΅ΠΌ Apple, ΠΎΡΠ½Π°ΡΡΠ½Π½ΡΡ Π½ΠΎΠ²ΡΠΌ ARM-ΡΠΈΠΏΠΎΠΌ Apple M1. ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΏΠΎΡΡΡ netbsd/arm64 ΠΈ openbsd/mips64 Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ NetBSD Π½Π° 64-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ ARM ΠΈ OpenBSD Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ MIPS64. Π ΠΏΠΎΡΡ linux/riscv64 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° cgo ΠΈ ΡΠ΅ΠΆΠΈΠΌΠ° «-buildmode=pie».
- ΠΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅ΠΆΠΈΠΌΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ x87 (GO386=387). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Π±Π΅Π· ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ SSE2 ΡΠ΅ΠΏΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Π° ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ «GO386=softfloat».
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ Π½Π°ΡΠ°Π»ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π΅ΡΠ°-Π²ΡΠΏΡΡΠΊΠ° ΡΠ·ΡΠΊΠ° Dart 2.12, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡΠ°Π±ΠΈΠ»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ ΡΠ΅ΠΆΠΈΠΌ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ «Null» (null safety), ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΊΡΠ°Ρ
ΠΎΠ², Π²ΡΠ·Π²Π°Π½Π½ΡΡ
ΠΏΠΎΠΏΡΡΠΊΠ°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΡΡ
Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΈ Π²ΡΡΡΠ°Π²Π»Π΅Π½ΠΎ Π² «Null». Π Π΅ΠΆΠΈΠΌ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΈΠΌ ΡΠ²Π½ΠΎ Π½Π΅ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ null. Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΡΡΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ ΡΠΈΠΏΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠΏΡΡΠΊΠΈ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ «Null» ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ ΡΠΈΠΏΠΎΠΌ, Π½Π΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΠΈΠΌ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ «int», Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru