Sobes.tech
Junior — Middle

Puoi elencare e spiegare le proprietà disponibili nel linguaggio Swift?

sobes.tech AI

Risposta dell'AI

In Swift, le proprietà sono variabili o costanti associate a classi, strutture o enumerazioni che memorizzano dati o calcolano valori.

Tipi principali di proprietà:

  • Proprietà memorizzate (Stored Properties) — memorizzano un valore costante o variabile. Ad esempio:
struct Persona {
    var nome: String  // proprietà memorizzata variabile
    let annoNascita: Int  // proprietà memorizzata costante
}
  • Proprietà calcolate (Computed Properties) — non memorizzano un valore direttamente, ma lo calcolano al momento dell'accesso. Possono avere un getter e un setter:
struct Rettangolo {
    var larghezza: Double
    var altezza: Double
    var area: Double {
        return larghezza * altezza
    }
}
  • Osservatori di proprietà (Property Observers) — consentono di reagire alle modifiche del valore di una proprietà memorizzata usando willSet e didSet:
var punteggio: Int = 0 {
    willSet {
        print("Presto cambierà in \(newValue)")
    }
    didSet {
        print("Cambiato da \(oldValue) a \(punteggio)")
    }
}
  • Proprietà di tipo (Type Properties) — appartengono al tipo stesso, non a un'istanza, e si dichiarano con static o class:
struct Matematica {
    static let pi = 3.14159
}

In questo modo, le proprietà in Swift consentono di memorizzare e calcolare dati in modo conveniente, oltre a monitorare le loro modifiche.