Swift Language ¿Qué son las extensiones?


Ejemplo

Las extensiones se utilizan para ampliar la funcionalidad de los tipos existentes en Swift. Las extensiones pueden agregar subíndices, funciones, inicializadores y propiedades computadas. También pueden hacer que los tipos se ajusten a los protocolos .

Supongamos que desea poder calcular el factorial de un Int . Puedes agregar una propiedad computada en una extensión:

extension Int {
    var factorial: Int {
        return (1..<self+1).reduce(1, combine: *)
    }
}

Luego puede acceder a la propiedad como si se hubiera incluido en la API Int original.

let val1: Int = 10

val1.factorial  // returns 3628800