Sobes.tech
Junior — Middle

Czy możesz wymienić i wyjaśnić właściwości dostępne w języku Swift?

sobes.tech AI

Odpowiedź od AI

W Swift właściwości to zmienne lub stałe powiązane z klasami, strukturami lub wyliczeniami, które przechowują dane lub obliczają wartości.

Główne typy właściwości:

  • Właściwości przechowywane (Stored Properties) — przechowują stałą lub zmienną wartość. Na przykład:
struct Osoba {
    var imię: String  // zmienna właściwość przechowywana
    let rokUrodzenia: Int  // stała właściwość przechowywana
}
  • Właściwości obliczane (Computed Properties) — nie przechowują wartości bezpośrednio, lecz obliczają ją podczas dostępu. Mogą mieć getter i setter:
struct Prostokąt {
    var szerokość: Double
    var wysokość: Double
    var pole: Double {
        return szerokość * wysokość
    }
}
  • Obserwatorzy właściwości (Property Observers) — pozwalają reagować na zmianę wartości właściwości przechowywanej za pomocą willSet i didSet:
var wynik: Int = 0 {
    willSet {
        print("Wkrótce zmieni się na \(newValue)")
    }
    didSet {
        print("Zmieniło się z \(oldValue) na \(wynik)")
    }
}
  • Właściwości typu (Type Properties) — należą do samego typu, a nie do instancji, i są deklarowane za pomocą static lub class:
struct Matematyka {
    static let pi = 3.14159
}

W ten sposób właściwości w Swift umożliwiają wygodne przechowywanie i obliczanie danych, a także śledzenie ich zmian.