Sobes.tech
Junior — Middle

Μπορείς να απαριθμήσεις και να εξηγήσεις τις ιδιότητες που διατίθενται στη γλώσσα Swift;

sobes.tech AI

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

Στο Swift, οι ιδιότητες είναι μεταβλητές ή σταθερές που σχετίζονται με κλάσεις, δομές ή enumerations και αποθηκεύουν δεδομένα ή υπολογίζουν τιμές.

Κύριοι τύποι ιδιοτήτων:

  • Αποθηκευμένες ιδιότητες (Stored Properties) — αποθηκεύουν μια σταθερή ή μεταβλητή τιμή. Για παράδειγμα:
struct Άτομο {
    var όνομα: String  // μεταβλητή αποθηκευμένη ιδιότητα
    let έτοςΓέννησης: Int  // σταθερή αποθηκευμένη ιδιότητα
}
  • Υπολογιζόμενες ιδιότητες (Computed Properties) — δεν αποθηκεύουν άμεσα μια τιμή, αλλά την υπολογίζουν κατά την πρόσβαση. Μπορούν να έχουν getter και setter:
struct Ορθογώνιο {
    var πλάτος: Double
    var ύψος: Double
    var περιοχή: Double {
        return πλάτος * ύψος
    }
}
  • Παρατηρητές ιδιοτήτων (Property Observers) — επιτρέπουν την αντίδραση σε αλλαγές της τιμής μιας αποθηκευμένης ιδιότητας χρησιμοποιώντας willSet και didSet:
var σκορ: Int = 0 {
    willSet {
        print("Πρόκειται να αλλάξει σε \(newValue)")
    }
    didSet {
        print("Αλλάχτηκε από \(oldValue) σε \(σκορ)")
    }
}
  • Τυπικές ιδιότητες (Type Properties) — ανήκουν στον ίδιο τον τύπο, όχι σε μια περίπτωση, και δηλώνονται με static ή class:
struct Μαθηματικά {
    static let π = 3.14159
}

Έτσι, οι ιδιότητες στο Swift επιτρέπουν την άνετη αποθήκευση και υπολογισμό δεδομένων, καθώς και την παρακολούθηση των αλλαγών τους.