Sobes.tech
Junior — Middle

Metod və funksiya arasındakı fərq nədir və onların istifadəsinin xüsusiyyətləri nələrdir?

sobes.tech Süni İntellekt

AI-dan cavab

Go dilində funksiya müstəqil kod blokudur, onu adı ilə çağırmaq mümkündür və parametr qəbul edə və dəyərlər qaytara bilər.

Metod isə müəyyən bir tipə (məsələn, struktur) bağlı olan funksiyadır. Metod, hansı tipə aid olduğunu müəyyən edən qəbul edən (receiver) ilə elan edilir.

İstifadə xüsusiyyətləri:

  • Metod, müəyyən bir tipin məlumatları ilə işləməyə imkan verir, metodun daxilində qəbul edən istifadə olunur.
  • Metodlar kodu təşkil etməyə və tiplər üçün davranışları həyata keçirməyə kömək edir, bu da Go-nu obyekt yönümlü üsluba yaxınlaşdırır.

Nümunə:

package main
import "fmt"

type Person struct {
    Name string
}

// Person tipinə qəbul edən ilə metod
func (p Person) Greet() {
    fmt.Println("Salam, mənim adım", p.Name)
}

// Adi funksiya
func Add(a, b int) int {
    return a + b
}

func main() {
    p := Person{Name: "Ivan"}
    p.Greet() // metod çağırışı
    fmt.Println(Add(2, 3)) // funksiya çağırışı
}