Sobes.tech
Junior — Middle

Qual é o papel da estrutura na conceção de programação orientada a objetos?

sobes.tech IA

Resposta da IA

No Go, uma estrutura (struct) é um tipo de dado definido pelo utilizador que combina vários campos de tipos diferentes numa única entidade. No contexto da programação orientada a objetos, a estrutura funciona como um objeto, permitindo modelar entidades reais com as suas propriedades.

Embora o Go não suporte classes nem herança no sentido clássico, as estruturas permitem:

  • Encapsular dados (campos).
  • Definir métodos para as estruturas, o que garante comportamento.
  • Utilizar composição para reutilizar código em vez de herança.

Exemplo de estrutura com método:

package main
import "fmt"

type Person struct {
    Name string
    Age  int
}

func (p Person) Greet() {
    fmt.Printf("Olá, o meu nome é %s e tenho %d anos.\n", p.Name, p.Age)
}

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

Assim, a estrutura em Go é um bloco de construção básico para criar objetos com estado e comportamento.