Sobes.tech
Intern

Šta je objektno-orijentisano programiranje (OOP)?

sobes.tech АИ

Одговор од АИ

Objektno-orijentisano programiranje (OOP) je paradigma programiranja zasnovana na konceptu "objekata", koji sadrže podatke (polja, atributi) i kod (metode, procedure).

Osnovni principi OOP-a:

  • Enkapsulacija: Grupisanje podataka i metoda koje rade sa njima u jedinstvenu strukturu — objekat. Sakrivanje unutrašnje implementacije objekta.
  • Nasleđivanje: Mogućnost kreiranja nove klase na osnovu postojeće, nasleđujući njena svojstva i metode. Omogućava ponovnu upotrebu koda i kreiranje hijerarhija klasa.
  • Polimorfizam: Mogućnost obrade objekata različitih klasa na isti način. Metode sa istim imenom mogu vršiti različite radnje u zavisnosti od tipa objekta.
  • Apstrakcija: Isticanje suštinskih karakteristika objekta, odbacivanje nevažnih detalja. Kreiranje opštih, apstraktnih tipova podataka.

Primer u Swift-u:

class Animal {
    var name: String

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

    func makeSound() {
        // Osnovna implementacija, može biti prepisana u podklasama
    }
}

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

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

// Polimorfizam
let animals: [Animal] = [Dog(name: "Buddy"), Cat(name: "Whiskers")]
for animal in animals {
    animal.makeSound() // Poziva odgovarajuću metodu makeSound() za svaki objekat
}