Junior — Middle
Existujú v štruktúrach mechanizmy podobné dedičstvu objektov v OOP?
sobes.tech AI
Odpoveď od AI
V dátových štruktúrach zvyčajne neexistuje priame dedičstvo, ktoré by bolo podobné objektovo orientovanému programovaniu. Avšak v iOS a Swift existujú protokoly a kompozícia, ktoré umožňujú implementovať podobné vzory.
Napríklad, štruktúry môžu spĺňať protokoly, čo je podobné implementácii rozhraní, nie dedičstvu. To umožňuje vytvárať všeobecné a rozšíriteľné štruktúry bez použitia tried.
Príklad:
protocol Drawable {
func draw()
}
struct Circle: Drawable {
func draw() {
print("Kreslíme kruh")
}
}
struct Square: Drawable {
func draw() {
print("Kreslíme štvorec")
}
}
Týmto spôsobom môžu štruktúry implementovať spoločné rozhrania, čo čiastočne nahrádza dedičstvo.
Ak je potrebná funkčnosť dedičstva, zvyčajne sa používajú triedy.