Swift: Estensioni

      Nessun commento su Swift: Estensioni

swift-hero

Ciao a tutti ragazzi in questo articolo voglio parlarvi delle estensioni in Swift, esse possono essere paragonate alle Categorie in Objective-C. In pratica esse ci consentono di aggiungere delle proprietà ad una classe o ad una struttura. A differenza dell’ Objective-C le estensioni in Swift non hanno un nome. La sintassi generale di un Estensione è la seguente:

extension nomeTipo{

    …..

}

Inoltre possiamo anche fare in modo che la nostra estensione sia conforme a un protocollo

extension nomeTipo:Protocollo{

//implementazione

}

Esempio

class Auto {

var modello:String

var contaChilometri:Double

init (modello:String,contaKm:Double){

self.modello = modello

self.contaChilometri=contaKm

}

func avvio () {

        println(“il motore della \(modello) si è avviato”)

    }

func destra() {

        println(“la \(modello) sta voltando a destra”)

 

}

func sinistra (){

        println(“la \(modello) sta voltando a sinistra”)

 

}

}

//Aggiungiamo una funzionalità alla classe Auto ovvero

extensionAuto {

    func cambioOlio(){

        println(“È stato cambiato l’olio alla \(modello))

    }

}

var Porsche = Auto(modello: “911 Turbo”, contaKm: 0.0)

Porsche.cambioOlio()

Come sempre se avete qualche domanda o dubbio lasciate pure un commento sotto l’articolo o su Facebook