πŸ’¬Π§Ρ‚ΠΎ ΠΈΠ· сСбя прСдставляСт пустой ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π² контСкстС языка Go?



πŸ“ŒΠŸΡƒΡΡ‚ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ "_" Π² Go дСйствуСт ΠΊΠ°ΠΊ своСго Ρ€ΠΎΠ΄Π° Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹ΠΉ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ. Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π² объявлСнии, Π½ΠΎ с Π½ΠΈΠΌ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ связано Π½ΠΈΠΊΠ°ΠΊΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.



πŸ‘‰ΠΠ΅ΡΠΊΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²:



1. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ: ΠΊΠΎΠ³Π΄Π° функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π½ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ нСсколько ΠΈΠ· Π½ΠΈΡ….



value, _ := someFunction()



2. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ элСмСнтов Π² range: ΠΊΠΎΠ³Π΄Π° ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ элСмСнты срСза ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠ° map, ΠΈ Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ»ΡŽΡ‡ ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.



for k, _ := range myMap {

fmt.Println(k)

}




for _, v := range mySlice {

fmt.Println(v)

}




3. Π˜ΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π°: ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Π² Π½Π΅ΠΌ, Π±Π΅Π· использования Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠΎΠ².



import _ "image/png"



4. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² мноТСствСнном присваивании:



_, y := getCoordinates()



5. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ошибок. Π₯отя Ρ‚Π°ΠΊ Π΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅ рСкомСндуСтся, пустой ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для игнорирования ошибок.



result, _ := strconv.Atoi("123")



6. ИспользованиС Π² Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹Ρ… структурах: ΠΊΠΎΠ³Π΄Π° создаСтся анонимная структура, ΠΈ Π½Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π΄Π°Π²Π°Ρ‚ΡŒ имя ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· Π΅Π΅ ΠΏΠΎΠ»Π΅ΠΉ.



person := struct {

Name string

_ int

}{"Alice", 30}




β˜οΈΠŸΡƒΡΡ‚ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ являСтся ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ инструмСнтом Π² Go ΠΈ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ бСзопасно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, Π½ΠΎ Π·Π»ΠΎΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡ‚ΡŒ ΠΈΠΌ Ρ‚ΠΎΡ‡Π½ΠΎ Π½Π΅ стоит, особСнно ΠΊΠΎΠ³Π΄Π° Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎΠ± ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ошибок.