Sobes.tech
Junior — Middle

Метод менен функциянын айырмасы эмнеде жана алардын колдонуу өзгөчөлүктөрү кандай?

sobes.tech AI

AIден жооп

Go тилинде функция — бул өзүнчө код блогу, аны аталышы менен чакырса болот жана ал параметрлерди кабыл алып, маанилерди кайтарат.

Метод — бул белгилүү бир түргө (мисалы, структурага) байланышкан функция. Метод кабыл алгычы (receiver) аркылуу жарыяланат, ал анын кайсы түргө тиешелүү экенин аныктайт.

Колдонуу өзгөчөлүктөрү:

  • Метод белгилүү бир түрдүн маалыматтары менен иштүүгө мүмкүндүк берет, методтун ичинде кабыл алгычты колдонуу менен.
  • Методтор кодду уюштурууга жана түрлөр үчүн жүрүм-турумду ишке ашырууга жардам берет, бул Go-ду объектке багытталган стилине жакындатып турат.

Мисал:

package main
import "fmt"

type Person struct {
    Name string
}

// Person түрүнө кабыл алгыч менен метод
func (p Person) Greet() {
    fmt.Println("Салам, менин атым", p.Name)
}

// Жөнөкөй функция
func Add(a, b int) int {
    return a + b
}

func main() {
    p := Person{Name: "Ivan"}
    p.Greet() // методду чакыруу
    fmt.Println(Add(2, 3)) // функцияны чакыруу
}