Sobes.tech
Intern

Ce este programarea orientată pe obiecte (POO)?

sobes.tech AI

Răspuns de la AI

Programarea orientată pe obiecte (OOP) este un paradigm de programare bazat pe conceptul de "obiecte", care conțin date (câmpuri, atribute) și cod (metode, proceduri).

Principiile de bază ale OOP:

  • Încapsulare: Combinarea datelor și a metodelor care lucrează cu ele într-o singură structură — obiect. Ascunderea implementării interne a obiectului.
  • Moștenire: Capacitatea de a crea o clasă nouă pe baza uneia existente, moștenind proprietățile și metodele acesteia. Permite reutilizarea codului și crearea ierarhiilor de clase.
  • Polimorfism: Capacitatea de a trata obiecte din clase diferite în același mod. Metodele cu același nume pot efectua acțiuni diferite în funcție de tipul obiectului.
  • Abstracție: Evidențierea caracteristicilor esențiale ale obiectului, ignorând detaliile nesemnificative. Crearea de tipuri de date generale și abstracte.

Exemplu în Swift:

class Animal {
    var name: String

    init(name: String) {
        self.name = name
    }

    func makeSound() {
        // Implementare de bază, poate fi suprascrisă în subclase
    }
}

class Dog: Animal {
    override func makeSound() {
        print("Woof!")
    }
}

class Cat: Animal {
    override func makeSound() {
        print("Meow!")
    }
}

// Polimorfism
let animals: [Animal] = [Dog(name: "Buddy"), Cat(name: "Whiskers")]
for animal in animals {
    animal.makeSound() // Se apelează metoda makeSound() corespunzătoare fiecărui obiect
}