Sobes.tech
Junior — Middle

Poți să numești principalele modele de programare orientată pe obiecte?

sobes.tech AI

Răspuns de la AI

Modelele principale ale programării orientate pe obiecte (POO) includ:

  • Moștenirea: permite crearea de noi clase pe baza celor existente, moștenind proprietățile și metodele acestora.
  • Încapsularea: ascunde detaliile interne ale implementării obiectului, oferind acces doar prin metode publice.
  • Polimorfismul: capacitatea obiectelor din clase diferite de a răspunde diferit la aceleași mesaje (metode).
  • Abstracția: evidențiază caracteristicile esențiale ale obiectului, ascunzând detaliile nesemnificative.

Aceste modele ajută la crearea de programe flexibile, extensibile și ușor de întreținut.

Exemplu în Go (utilizarea interfețelor pentru polimorfism):

package main
import "fmt"

type Animal interface {
    Speak() string
}

type Dog struct{}
func (d Dog) Speak() string {
    return "Ham!"
}

type Cat struct{}
func (c Cat) Speak() string {
    return "Miau!"
}

func main() {
    animals := []Animal{Dog{}, Cat{}}
    for _, animal := range animals {
        fmt.Println(animal.Speak())
    }
}

În acest exemplu, diferite tipuri implementează aceeași interfață, demonstrând polimorfism.