Junior — Middle
Tudnád megnevezni az objektumorientált programozás fő mintáit?
sobes.tech MI
Válasz az MI-től
Az objektumorientált programozás (OOP) fő mintái a következők:
- Öröklődés (Inheritance): lehetővé teszi új osztályok létrehozását meglévő osztályok alapján, örökölve azok tulajdonságait és metódusait.
- Encapsuláció (Encapsulation): elrejti az objektum belső részleteit, és csak nyilvános metódusokon keresztül teszi elérhetővé azokat.
- Polimorfizmus (Polymorphism): különböző osztályokhoz tartozó objektumok ugyanarra az üzenetre (metódusra) különböző módon reagálnak.
- Absztrakció (Abstraction): kiemeli az objektum lényeges jellemzőit, elrejtve a nem lényeges részleteket.
Ezek a minták segítenek rugalmas, bővíthető és karbantartható programok készítésében.
Példa Go nyelven (interfészek használata a polimorfizmushoz):
package main
import "fmt"
type Animal interface {
Speak() string
}
type Dog struct{}
func (d Dog) Speak() string {
return "Vau!"
}
type Cat struct{}
func (c Cat) Speak() string {
return "Miau!"
}
func main() {
animals := []Animal{Dog{}, Cat{}}
for _, animal := range animals {
fmt.Println(animal.Speak())
}
}
Ebben a példában különböző típusok valósítanak meg egy interfészt, demonstrálva a polimorfizmust.