Junior — Middle
Usul va funksiyaga qanday farq bor va ularning foydalanish xususiyatlari qanday?
sobes.tech AI
AIdan javob
Go tilida funksiya mustaqil kod blokidir, uni nomi bilan chaqirish mumkin va u parametrlarni qabul qilishi va qiymatlarni qaytarishi mumkin.
Usul — bu ma'lum bir turga (masalan, tuzilma) bog'langan funksiya. Usul qabul qiluvchi (receiver) bilan e'lon qilinadi, bu uning qaysi turga tegishli ekanligini belgilaydi.
Foydalanish xususiyatlari:
- Usul ma'lum bir turdagi ma'lumotlar bilan ishlash imkonini beradi, usul ichida qabul qiluvchidan foydalanadi.
- Usullar kodni tashkil qilish va turlar uchun xatti-harakatlarni amalga oshirishga yordam beradi, bu Go'ni ob'ektga yo'naltirilgan uslubga yaqinlashtiradi.
Misol:
package main
import "fmt"
type Person struct {
Name string
}
// Person turiga qabul qiluvchi bilan usul
func (p Person) Greet() {
fmt.Println("Salom, ismim", p.Name)
}
// Oddiy funksiya
func Add(a, b int) int {
return a + b
}
func main() {
p := Person{Name: "Ivan"}
p.Greet() // usulni chaqirish
fmt.Println(Add(2, 3)) // funksiyani chaqirish
}