Sobes.tech
Intern

Co je to objektově orientované programování (OOP)?

sobes.tech AI

Odpověď od AI

Objektově orientované programování (OOP) je programovací paradigma založené na konceptu "objektů", které obsahují data (pole, atributy) a kód (metody, procedury).

Hlavní principy OOP:

  • Zapouzdření: Sdružení dat a metod, které s nimi pracují, do jedné struktury — objektu. Skrytí vnitřní implementace objektu.
  • Dědičnost: Možnost vytvořit novou třídu na základě existující, dědící její vlastnosti a metody. Umožňuje opakované použití kódu a tvorbu hierarchií tříd.
  • Polymorfismus: Možnost zpracovávat objekty různých tříd stejným způsobem. Metody se stejným názvem mohou vykonávat různé akce v závislosti na typu objektu.
  • Abstrakce: Vyzdvihnutí podstatných vlastností objektu, odložení nedůležitých detailů. Vytváření obecných, abstraktních datových typů.

Příklad v Swift:

class Animal {
    var name: String

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

    func makeSound() {
        // Základní implementace, může být přepsána v podtřídách
    }
}

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

class Cat: Animal {
    override func makeSound() {
        print("Mňau!")
    }
}

// Polymorfismus
let animals: [Animal] = [Dog(name: "Buddy"), Cat(name: "Whiskers")]
for animal in animals {
    animal.makeSound() // Volá odpovídající metodu makeSound() pro každý objekt
}