Sobes.tech
Junior — Middle

Există în structuri mecanisme similare cu moștenirea obiectelor în OOP?

sobes.tech AI

Răspuns de la AI

În structurile de date, de obicei, nu există un mecanism direct de moștenire similar cu programarea orientată pe obiecte. Cu toate acestea, în iOS și Swift, există protocoale și compoziție care permit implementarea unor modele similare.

De exemplu, structurile pot respecta protocoale, ceea ce este similar cu implementarea interfețelor, și nu cu moștenirea. Acest lucru permite crearea de structuri generice și extensibile fără utilizarea claselor.

Exemplu:

protocol Drawable {
    func draw()
}

struct Circle: Drawable {
    func draw() {
        print("Desenează un cerc")
    }
}

struct Square: Drawable {
    func draw() {
        print("Desenează un pătrat")
    }
}

Astfel, structurile pot implementa interfețe comune, ceea ce înlocuiește parțial moștenirea.

Dacă este nevoie de funcționalitate de moștenire, de obicei se folosesc clase.