Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Go
ΠΠ°Ρ
ΠΎΠ΄ΠΈΠΌ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΡ Go.

ΠΠ°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° Download Go.

ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ Π²Π΅ΡΡΠΈΡ Π΄Π»Ρ ΡΠ²ΠΎΠ΅ΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΡΠΊΠ°ΡΠΈΠ²Π°Π΅ΠΌ.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Windows Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΡΠΈΠΊ. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Linux, ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²Π°ΡΡ ΡΠΊΠ°ΡΠ°Π½Π½ΡΠΉ Π°ΡΡ
ΠΈΠ² Π² /usr/local/go
ΠΈ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΡΡ /usr/local/go/bin
Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ $PATH
. ΠΠΎΠ»ΡΡΠΈΡΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΠΏΠ°ΠΏΠΎΠΊ:

Π§ΡΠΎΠ± ΡΠ±Π΅Π΄ΠΈΡΡΡΡ Π² ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ go version
Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΈΠ»ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅:

Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° ΠΊΠΎΠ΄Π°
Go ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°Ρ ΠΊΠΎΠ΄Π° (IDE), ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ:
- Goland
- Visual Studio Code
- vim
ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ IDE Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎ ΡΡΠ»ΠΊΠ΅: https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ helloworld
. ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π² Π½Π΅Π΅ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
go mod init helloworld
ΠΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ ΡΠ°ΠΉΠ» Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ go.mod
.
go.mod
Π² ΠΊΠΎΡΠ½Π΅. ΠΡΠΎΡ ΡΠ°ΠΉΠ» ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΡΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈ Π½Π°Π±ΠΎΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.ΠΠ°Π»Π΅Π΅ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΉΠ» main.go
ΠΈ Π·Π°ΠΏΠΈΡΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
package main
func main() {
println("Hello World")
}
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈ Π·Π°ΠΏΡΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠ΄, ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΈΠ»ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π». ΠΠ°Π»Π΅Π΅ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³, Π³Π΄Π΅ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ ΡΠ°ΠΉΠ» main.go
ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
go run main.go
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π±ΡΠ΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:

ΠΡ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΠΏΠ΅ΡΠ²ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Go, ΠΏΠΎΠ·Π΄ΡΠ°Π²Π»ΡΠ΅ΠΌ!
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ, ΡΡΠΎ Π·Π΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ:
- Π€ΡΠ½ΠΊΡΠΈΡ
main
β Π²Ρ ΠΎΠ΄Π½Π°Ρ ΡΠΎΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π‘ Π½Π΅Π΅ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΠΈ Π² Π½Π΅ΠΉ ΠΆΠ΅ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ. println
β ΡΡΠ½ΠΊΡΠΈΡ, Π²ΡΠ²ΠΎΠ΄ΡΡΠ°Ρ ΡΠ΅ΠΊΡΡ Π½Π° ΡΠΊΡΠ°Π½ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ. ΠΠ»Ρ Π²ΡΠ·ΠΎΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ + ΠΎΡΠΊΡΡΠ²Π°ΡΡΠ°Ρ ΠΊΡΡΠ³Π»Π°Ρ ΡΠΊΠΎΠ±ΠΊΠ° + Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ + Π·Π°ΠΊΡΡΠ²Π°ΡΡΠ°Ρ ΠΊΡΡΠ³Π»Π°Ρ ΡΠΊΠΎΠ±ΠΊΠ° + ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ {}
.- ΠΠΎ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠΈΠ³ΡΡΠ½ΠΎΠΉ ΡΠΊΠΎΠ±ΠΊΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ
main
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ.
ΠΠΎΠ΄, Π»ΠΈΡΡΠΈΠ½Π³ΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π½ΠΈΠΆΠ΅, Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π²Π½ΡΡΡΠΈ ΡΠΈΠ³ΡΡΠ½ΡΡ
(ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ½ΡΡ
) ΡΠΊΠΎΠ±ΠΎΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ main
. Π ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ
ΡΡΠ½ΠΊΡΠΈΡ main
Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΡΠ΅Π½Π° Π΄Π»Ρ ΠΊΡΠ°ΡΠΊΠΎΡΡΠΈ.
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² Go Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΡΡΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΡΠΈΠΏΠΎΠΌ, ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ Π΄ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² Go:
var number int
ΠΡ ΠΎΠ±ΡΡΠ²ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ number Ρ ΡΠΈΠΏΠΎΠΌ int
. int
β ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ Ρ
ΡΠ°Π½ΠΈΡ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ.
ΠΠ°Π·ΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
:
- bool
- string
- int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 uintptr
- byte // ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ Π΄Π»Ρ uint8
- rune // ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ Π΄Π»Ρ int32
- float32 float64
- complex64 complex128
ΠΡΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π΅Π΅ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΠ»Ρ int
ΡΡΠΎ 0, Π΄Π»Ρ float
β 0.0, Π΄Π»Ρ string
β "" (ΠΏΡΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ°), Π΄Π»Ρ bool
β false
.
ΠΡΠ»ΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΡΠ°ΡΠΊΠΎΠΉ Π·Π°ΠΏΠΈΡΡΡ:
number := 0
// ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ
var number = 0
Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΠΎΡΠ»Π΅ Π΅Π΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ =
:
var number, secondNumber int
number = 15
secondNumber = number
println(number) // ΠΡΠ²ΠΎΠ΄: 15
println(secondNumber) // ΠΡΠ²ΠΎΠ΄: 15
ΠΠ°Π΄ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΡΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π²Π½ΠΈΡΡ, Π° ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½ΠΈΡΠΎΠ²Π°ΡΡ.
Π‘ΠΏΠΈΡΠΎΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² Go:

Π£ΠΏΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
ΠΠ»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΡ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅, ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅:
- Π‘Π»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅
- Π£ΡΠ»ΠΎΠ²ΠΈΠ΅
- Π¦ΠΈΠΊΠ»Ρ
Π‘Π»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ΅ΡΡ ΠΊΠΎΠ΄ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΡΠΎΠΊΠ° Π·Π° ΡΡΡΠΎΠΊΠΎΠΉ.
Π£ΡΠ»ΠΎΠ²ΠΈΠ΅
ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ°ΡΡΠΊΠ° ΠΊΠΎΠ΄Π° Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠ»ΠΎΠ²Π½Π°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ if
:
number := 15
secondNumber := 10
if number < secondNumber {
println("ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ Π²ΡΠΎΡΠΎΠ³ΠΎ")
}
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ Π½Π° ΡΠΊΡΠ°Π½, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π»ΠΎΠΆΠ½ΠΎ. ΠΠ° ΠΌΠ΅ΡΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π²ΡΠ΅, ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ΅Π³ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° bool
.
Π§ΡΠΎΠ±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡΡ ΠΏΡΠΈ Π½Π΅Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ else
:
if number < secondNumber {
println("ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ Π²ΡΠΎΡΠΎΠ³ΠΎ")
} else if number > secondNumber {
println("Π²ΡΠΎΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ")
} else {
println("ΡΠΈΡΠ»Π° ΡΠ°Π²Π½Ρ")
}
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ if
ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ switch
, ΡΠ°Π±ΠΎΡΠ°ΡΡΠ°Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
switch 200 {
case 100:
println("ΡΠΈΡΠ»ΠΎ ΡΠ°Π²Π½ΠΎ 100")
case 200:
println("ΡΠΈΡΠ»ΠΎ ΡΠ°Π²Π½ΠΎ 200") // Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ ΡΡΠΎ
}
switch
ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 200 ΠΈ ΠΈΡΠ΅Ρ case
, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°.
switch
ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Π·Π°ΠΌΠ΅Π½Π° if
. ΠΠ΅ΡΠ΅ΠΏΠΈΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Ρ Ρ
if
:
switch {
case number < secondNumber:
println("ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ Π²ΡΠΎΡΠΎΠ³ΠΎ")
case number > secondNumber:
println("Π²ΡΠΎΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ")
default:
println("ΡΠΈΡΠ»Π° ΡΠ°Π²Π½Ρ")
}
Π ΠΎΠ»Ρ else
Π·Π΄Π΅ΡΡ ΠΈΠ³ΡΠ°Π΅Ρ ΡΠ»ΠΎΠ²ΠΎ default
. ΠΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΏΡΠΈ Π½Π΅Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΡΡΠ»ΠΎΠ²ΠΈΠΉ.
Π¦ΠΈΠΊΠ»Ρ
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π΄Π»Ρ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΡ ΡΡΠ°ΡΡΠΊΠΎΠ² ΠΊΠΎΠ΄Π° Π² Go ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΊΠ» for
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΎΡΠΌΡ:
for i := 1; i <= 10; i++ {
println(i)
}
ΠΡΠΎΡ ΡΠΈΠΊΠ» ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΡ 1 Π΄ΠΎ 10.
ΠΡΠ»ΠΈ Π½ΡΠΆΠ΅Π½ ΡΠΈΠΊΠ» Π±Π΅Π· ΡΡΠ΅ΡΡΠΈΠΊΠ°, Π½ΡΠΆΠ½ΠΎ ΠΎΠΏΡΡΡΠΈΡΡ ΠΏΠ΅ΡΠ²ΡΡ ΠΈ ΡΡΠ΅ΡΡΡ ΡΠ°ΡΡΠΈ ΡΠΈΠΊΠ»Π° for
Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠΎΡΠΊΠΎΠΉ Π·Π°ΠΏΡΡΠΎΠΉ:
for number < secondNumber {
number = number + 1
}
ΠΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠΈ ΡΠΈΠΊΠ»Π° Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠ²Π΅ΡΡΡΡΡΡ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅. ΠΠΎΠΊΠ° ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΈΡΡΠΈΠ½Π½ΠΎ, ΡΠΈΠΊΠ» Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡΡΡ. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΡΠ°Π½Π΅Ρ Π»ΠΎΠΆΠ½ΡΠΌ, ΠΎΠ½ ΠΏΡΠ΅ΡΠ²Π΅ΡΡΡ.
ΠΠ»Ρ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΡΡΠΈΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅:
for {
println("ΠΠ΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠΈΠΊΠ»")
}
Π§ΡΠΎΠ±Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΈΠΊΠ», ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ break
:
i := 0
for {
println("ΠΠ΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠΈΠΊΠ»")
if i == 10 {
break
}
i++
}
ΠΡΠΈ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ break
ΡΠΈΠΊΠ» Π±ΡΠ΄Π΅Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½.
ΠΠ½ΡΡΡΠΈ ΡΠΈΠΊΠ»Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΠ»ΠΎΠ²ΠΎ continue
. ΠΠ½ΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ break
ΡΠ΅ΠΌ, ΡΡΠΎ Π½Π΅ ΡΡΠ°Π·Ρ Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ ΡΠΈΠΊΠ», Π° Π»ΠΈΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΠΎΡΡΠ°Π²ΡΠΈΠΉΡΡ ΠΊΠΎΠ΄ ΡΠΈΠΊΠ»Π° ΠΈ Π½Π°ΡΠΈΠ½Π°Π΅Ρ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠ΅.
ΠΠ°ΡΡΠΈΠ²Ρ
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π°:
var numbers [3]int
ΠΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΡΡΡΡ Ρ Π½ΡΠ»Ρ.
ΠΠ°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ:
numbers[0] = 10
numbers[1] = 11
numbers[2] = 12
ΠΡΠ»ΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ ΠΏΡΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠΌ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π°:
var numbers [3]int = [3]int{10, 11, 12}
ΠΠ»Ρ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΡ Π»ΠΈΡΠ½Π΅Π³ΠΎ ΠΊΠΎΠ΄Π° Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΊΡΠ°ΡΠΊΠΈΠΌ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ:
numbers := [3]int{10, 11, 12}
Π Π°Π·ΠΌΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ΅Π½ΡΡΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ»Ρ ΡΡΠΈΡ ΡΠ΅Π»Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ»Π°ΠΉΡΡ.
Π‘Π»Π°ΠΉΡΡ
Π‘Π»Π°ΠΉΡ ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²ΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ²Ρ. ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ»Π°ΠΉΡΠ° ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠ°:
numbers := [3]int{10, 11, 12} // ΠΌΠ°ΡΡΠΈΠ²
numbers := []int{10, 11, 12} // ΡΠ»Π°ΠΉΡ
Π‘Π»Π°ΠΉΡ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ΅Π½ΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΡΠ»Π°ΠΉΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ append
:
numbers = append(numbers, 13) // Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°
numbers = append(numbers, 14, 15) // Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²
Π€ΡΠ½ΠΊΡΠΈΠΈ
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½ΡΠΆΠ½Ρ ΡΡΠ½ΠΊΡΠΈΠΈ.
println
Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΠΊΡΠ°Π½.Π€ΡΠ½ΠΊΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π° Π²Π½Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ main
:
func ΠΠ°Π·Π²Π°Π½ΠΈΠ΅Π€ΡΠ½ΠΊΡΠΈΠΈ(ΠΏΠ΅ΡΠ²ΡΠΉΠΡΠ³ΡΠΌΠ΅Π½Ρ int, Π²ΡΠΎΡΠΎΠΉΠΡΠ³ΡΠΌΠ΅Π½Ρ int) (Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠ΅ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ int) {
// ΡΠ΅Π»ΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ
return 0
}
ΠΠΎΡΠ»Π΅ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° func
ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠ°Π»Π΅Π΅ Π² ΠΊΡΡΠ³Π»ΡΡ
ΡΠΊΠΎΠ±ΠΊΠ°Ρ
Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ. ΠΠΎΡΠ»Π΅ Π·Π°ΠΊΡΡΠ²Π°ΡΡΠ΅ΠΉ ΠΊΡΡΠ³Π»ΠΎΠΉ ΡΠΊΠΎΠ±ΠΊΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΊΠΎΠ΄ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ½ΡΡ
ΡΠΊΠΎΠ±ΠΊΠ°Ρ
.
Π€ΡΠ½ΠΊΡΠΈΡ Sum
ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅Ρ Π΄Π²Π° ΡΠΈΡΠ»Π° ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ:
func Sum(a, b int) int {
return a + b
}
Π€ΡΠ½ΠΊΡΠΈΡ SumAndDivide
Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠ°ΠΊ ΡΡΠΌΠΌΡ, ΡΠ°ΠΊ ΠΈ ΡΠ°ΡΡΠ½ΠΎΠ΅ ΡΠΈΡΠ΅Π»:
func SumAndDivide(a, b int) (int, int) {
return a + b, a / b
}
ΠΠ±Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² ΡΡΠ½ΠΊΡΠΈΠΈ main:
func main() {
sum := Sum(1, 2)
println(sum) // 3
sum, division := SumAndDivide(4, 2)
println(sum) // 6
println(division) // 2
}
ΠΠ°ΠΊΠ΅ΡΡ
ΠΠΈΡΠ°ΡΡ ΠΊΠΎΠ΄ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎ. Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π½Π΅Π»ΡΠ·Ρ. ΠΠΎΡΡΠΎΠΌΡ ΠΊΠΎΠ΄ ΡΠ°Π·Π±ΠΈΠ²Π°Π΅ΡΡΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΡ β Π½Π°Π±ΠΎΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .go
ΠΈ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠ·ΡΠΊΠ° Go ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΈ Π²Π°ΠΆΠ½ΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅ strings
ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ.
ΠΠΌΠΏΠΎΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ° strings
:
package main
import "strings"
func main() {
upper := strings.ToUpper("Π·Π°Π³Π»Π°Π²Π½ΡΠ΅ Π±ΡΠΊΠ²Ρ")
println(upper) // Output: ΠΠΠΠΠΠΠΠ«Π ΠΠ£ΠΠΠ«
}
ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ import
Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ· ΠΏΠ°ΠΊΠ΅ΡΠ° strings
, Π½ΡΠΆΠ½ΠΎ:
- Π½Π°ΠΏΠΈΡΠ°ΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ°;
- ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠΎΡΠΊΡ;
- Π²ΡΠ·Π²Π°ΡΡ Π½ΡΠΆΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠ· ΠΏΠ°ΠΊΠ΅ΡΠ°.
ΠΠ΅ΡΠ²ΠΎΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ βHello Webβ
Π ΠΏΠ°ΠΊΠ΅ΡΠ΅ http
ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ°.
package main
import (
"log"
"net/http"
)
func HelloWeb(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("Hello Web!"))
}
func main() {
http.HandleFunc("/", HelloWeb)
err := http.ListenAndServe("localhost:9999", nil)
if err != nil {
log.Println("listen and serve:", err)
}
}
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΊΠΎΠ΄. ΠΠ°Π»Π΅Π΅ ΠΎΡΠΊΡΠΎΠΉΡΠ΅ Π±ΡΠ°ΡΠ·Π΅Ρ ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ http://localhost:9999/. ΠΡ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ βHello Web!β
Π€ΡΠ½ΠΊΡΠΈΡ http.HandleFunc
ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ HelloWeb
, ΠΏΠΎ ΠΏΡΡΠΈ /
, Π° http.ListenAndServe
Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠ΅ΡΠ²Π΅Ρ ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ Π°Π΄ΡΠ΅ΡΡ.
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΡΠ΅ ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ Π°Π΄ΡΠ΅ΡΡ, Π²ΡΠ·ΠΎΠ²Π΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ HelloWeb
. Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° β ΡΠ°ΠΌ Π·Π°ΠΏΡΠΎΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π° Π·Π°ΠΏΡΠΎΡ. Π ΡΡΡΠΎΠΊΠ΅ w.Write([]byte(βHello Webβ))
ΠΌΡ ΠΎΡΠ²Π΅ΡΠ°Π΅ΠΌ Π½Π° Π·Π°ΠΏΡΠΎΡ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ.
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΠ΅ΠΌ, Π²Ρ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ Π²Π°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ Π½Π° Go!
ΠΠΈΡΠ΅ΡΠ°ΡΡΡΠ°
- Β«ΠΠ·ΡΡΠ°Π΅ΠΌ GoΒ» β Head First, ΠΠΆΠ΅ΠΊ ΠΠ°ΠΊΠ³Π°Π²ΡΠ΅Π½.
- Β«Π―Π·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ GoΒ» β ΠΠ»Π°Π½ Π. Π. ΠΠΎΠ½ΠΎΠ²Π°Π½, ΠΡΠ°ΠΉΠ°Π½ Π£. ΠΠ΅ΡΠ½ΠΈΠ³Π°Π½.
- Β«Go Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅Β» β ΠΠ°ΡΡΠ΅Ρ ΠΡΡΡ, Π€Π°ΡΠΈΠ½Π° ΠΡΡΡ.
ΠΠ½Π»Π°ΠΉΠ½ ΡΠ΅ΡΡΡΡΡ
- https://golang.org/ β ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΡ.
- https://tour.golang.org/welcome/1 β ΡΡΡ ΠΏΠΎ ΡΠ·ΡΠΊΡ Go.
- https://go.dev/ β ΠΎΡΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΏΠΎΡΡΠ°Π» ΠΎΠ± ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠ·ΡΠΊΠ°.
Go Π² βΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°β
- ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌ-ΠΊΠ°Π½Π°Π» ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Go-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°
- ΠΏΠΎΠ΄ΠΏΠΈΡΡΠ²Π°ΠΉΡΠ΅ΡΡ Π½Π° ΡΠ΅Π³ Go, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎ Π½ΠΎΠ²ΡΡ ΠΏΠΎΡΡΠ°Ρ Π½Π° ΡΠ°ΠΉΡΠ΅
ΠΡ ΠΏΡΠΎΠ±Π΅ΠΆΠ°Π»ΠΈΡΡ ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π°ΠΌ Go: ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ, ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΡΡΠ½ΠΊΡΠΈΠΈ.
Π¦Π΅Π½Π½ΠΎΡΡΡΠΌΠΈ ΡΠ·ΡΠΊΠ° ΡΠ²Π»ΡΡΡΡΡ:
- ΠΡΠΎΡΡΠΎΡΠ°
- ΠΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ
- ΠΠ°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ
- ΠΡΠΎΠ΄ΡΠΊΡΠΈΠ²Π½ΠΎΡΡΡ
- ΠΡΡΠΆΠ΅Π»ΡΠ±Π½ΠΎΡΡΡ
Go ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ, ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΈ Π²ΠΎΡΡΡΠ΅Π±ΡΠ΅ΠΌΡΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠΎΠΈΡ Π½Π°ΡΠ°ΡΡ ΠΈΠ·ΡΡΠ°ΡΡ ΠΏΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ.
Π₯ΠΎΡΡ ΠΎΡΠ²ΠΎΠΈΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ ΠΈ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , Π½ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ. Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ?
ΠΠ»Π³ΠΎΡΠΈΡΠΌΡ ΠΈ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅ΠΏΡΠΎΡΡΠ°Ρ ΡΠ΅ΠΌΠ° Π΄Π»Ρ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ: Π½Π΅ Ρ ΠΊΠΎΠ³ΠΎ ΡΠΏΡΠΎΡΠΈΡΡ ΠΈ ΡΡΠΎ-ΡΠΎ ΡΡΠΎΡΠ½ΠΈΡΡ. ΠΠΎΡΡΠΎΠΌΡ ΠΌΡ Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ ΠΊΡΡΡ Β«ΠΠ»Π³ΠΎΡΠΈΡΠΌΡ ΠΈ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ Β», Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ Π΅ΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡΠ½ΡΡ Π²Π΅Π±ΠΈΠ½Π°ΡΠΎΠ² Π²Ρ:
- ΠΈΠ·ΡΡΠΈΡΠ΅ ΡΠ»Π΅Π½Π³, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π³ΠΎΠ²ΠΎΡΡΡ Π²ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ: ΡΠ·ΡΠΊ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΈ ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ ;
- Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ ΠΈ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ;
- ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΠ΅ΡΡ ΠΊ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅.
ΠΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΠΊΠ°ΠΊ junior, ΡΠ°ΠΊ ΠΈ middle-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ.
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ