Junior — Middle
Můžeš uvést hlavní vzory objektově orientovaného programování?
sobes.tech AI
Odpověď od AI
Hlavní vzory objektově orientovaného programování (OOP) zahrnují:
- Dědičnost (Inheritance): umožňuje vytvářet nové třídy na základě stávajících, dědí jejich vlastnosti a metody.
- Zapouzdření (Encapsulation): skrývá vnitřní detaily implementace objektu, zpřístupňuje je pouze prostřednictvím veřejných metod.
- Polymorfismus (Polymorphism): schopnost objektů různých tříd reagovat na stejné zprávy (metody) odlišně.
- Abstrakce (Abstraction): zdůrazňuje podstatné vlastnosti objektu, skrývá nepodstatné detaily.
Tyto vzory pomáhají vytvářet flexibilní, rozšiřitelné a udržovatelné programy.
Příklad v Go (použití rozhraní pro polymorfismus):
package main
import "fmt"
type Animal interface {
Speak() string
}
type Dog struct{}
func (d Dog) Speak() string {
return "Haf!"
}
type Cat struct{}
func (c Cat) Speak() string {
return "Mňau!"
}
func main() {
animals := []Animal{Dog{}, Cat{}}
for _, animal := range animals {
fmt.Println(animal.Speak())
}
}
V tomto příkladu různé typy implementují stejnou rozhraní, čímž demonstrují polymorfismus.