Sobes.tech
Intern

Τι είναι ο αντικειμενοστραφής προγραμματισμός (ΑΠ);

sobes.tech AI

Απάντηση από AI

Ο αντικειμενοστραφής προγραμματισμός (OOP) είναι ένα παράδειγμα προγραμματισμού που βασίζεται στην έννοια των "αντικειμένων", τα οποία περιέχουν δεδομένα (πεδία, χαρακτηριστικά) και κώδικα (μεθόδους, διαδικασίες).

Βασικές αρχές του OOP:

  • Ενθυλάκωση: Ομαδοποίηση δεδομένων και μεθόδων που εργάζονται με αυτά σε μια ενιαία δομή — το αντικείμενο. Απόκρυψη της εσωτερικής υλοποίησης του αντικειμένου.
  • Κληρονομικότητα: Δυνατότητα δημιουργίας μιας νέας κλάσης βασισμένης σε μια υπάρχουσα, κληρονομώντας τις ιδιότητες και τις μεθόδους της. Επιτρέπει την επανάχρηση κώδικα και τη δημιουργία ιεραρχιών κλάσεων.
  • Πολυμορφισμός: Δυνατότητα επεξεργασίας αντικειμένων διαφορετικών κλάσεων με τον ίδιο τρόπο. Οι μέθοδοι με το ίδιο όνομα μπορούν να εκτελούν διαφορετικές ενέργειες ανάλογα με τον τύπο του αντικειμένου.
  • Αφηρημένη: Ανάδειξη των ουσιωδών χαρακτηριστικών του αντικειμένου, απορρίπτοντας τις μη ουσιώδεις λεπτομέρειες. Δημιουργία γενικών, αφηρημένων τύπων δεδομένων.

Παράδειγμα σε Swift:

class Animal {
    var name: String

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

    func makeSound() {
        // Βασική υλοποίηση, μπορεί να υπερισχύσει σε υποκλάσεις
    }
}

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

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

// Πολυμορφισμός
let animals: [Animal] = [Dog(name: "Buddy"), Cat(name: "Whiskers")]
for animal in animals {
    animal.makeSound() // Καλείται η κατάλληλη μέθοδος makeSound() για κάθε αντικείμενο
}