Sobes.tech
Junior — Middle

Pouvez-vous nommer les principaux modèles de la programmation orientée objet?

sobes.tech IA

Réponse de l'IA

Les principaux modèles de la programmation orientée objet (POO) incluent :

  • Héritage : permet de créer de nouvelles classes basées sur des classes existantes, en héritant leurs propriétés et méthodes.
  • Encapsulation : cache les détails internes de l'implémentation de l'objet, en fournissant un accès uniquement via des méthodes publiques.
  • Polymorphisme : capacité des objets de différentes classes à répondre de manière différente aux mêmes messages (méthodes).
  • Abstraction : met en évidence les caractéristiques essentielles de l'objet, en cachant les détails non essentiels.

Ces modèles aident à créer des programmes flexibles, extensibles et maintenables.

Exemple en Go (utilisation d'interfaces pour le polymorphisme) :

package main
import "fmt"

type Animal interface {
    Speak() string
}

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

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

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

Dans cet exemple, différents types implémentent une même interface, démontrant le polymorphisme.