Sobes.tech
Junior — Middle

Milyen szerepet tölt be a szerkezet az objektumorientált programozás fogalmában?

sobes.tech MI

Válasz az MI-től

A Go nyelvben a struktúra (struct) egy felhasználó által definiált adattípus, amely több, különböző típusú mezőt egyesít egy egységes entitásba. Az objektumorientált programozás kontextusában a struktúra egy objektumként működik, lehetővé téve valódi entitások modellezését azok tulajdonságaival.

Bár a Go nem támogatja a klasszikus értelemben vett osztályokat és öröklődést, a struktúrák lehetővé teszik:

  • Az adatok (mezők) inkapszulációját.
  • Metódusok definiálását a struktúrákhoz, amelyek viselkedést biztosítanak.
  • Kompozíció használatát a kód újrafelhasználására az öröklés helyett.

Példa egy metódussal ellátott struktúrára:

package main
import "fmt"

type Person struct {
    Name string
    Age  int
}

func (p Person) Greet() {
    fmt.Printf("Szia, a nevem %s és %d éves vagyok.\n", p.Name, p.Age)
}

func main() {
    person := Person{Name: "Ivan", Age: 30}
    person.Greet()
}

Így a struktúra a Go-ban alapvető építőeleme az állapottal és viselkedéssel rendelkező objektumok létrehozásának.