Knoppia

Wiki de Informática y otras historias

Herramientas de usuario

Herramientas del sitio


Barra lateral

Proyecto Integral de Ingeniería del Software
Metodologías Ágiles
Trabajo Fin De Grado
Guía Memoria TFG

Colecciones

Otros

swift:introduccion

Introducción a swift

Librerías básicas Import Foundation

Opcionalidad

Una variable puede ser opcional, no tiene valor.

var optionalString = "Hello"
print(optionalString == nil)//Esto sería un False
 
var optionalName: String? = "patata"
var greeting = "Hola"
if let name = optionalName{
   greeting = "Hola, \(name)"
}

Podemos lidiar con los valores nulos utilizando doble interrogación:

   let nickname: String? = nil
   let fulname = "patata"
   //con la doble interrogación indicamos que si nickname es null, se muestra fulname en su lugar
   let informalGreeting = "Hola \(nickname ?? fulname)"
   print(informalGreeting)

Switches

let vegetable = "pepper"
switch vegetable {
  case "celery":
    print("Me da que esto no es, pero a saber")
  case "cucumber", "Watercress":
    Print("Esto le da miedo a youtube")
  case ket x Where x.hasSuffix("pepper")://si acaba en pepper se ejecuta
    print("THIS")
  default:
    print("Verdura")
}

Programación Funcional

Swift tiene programación funcional. Ejemplos:

Long result = numetos.stream().filter(num.patata > 10)//Filtro
let interestingNumbers = [
  "prime":[2, 3, 5, 7, 11, 13]
  "Fibonacci":[1,1,2,3,5,8,]
  "Square":[1,4,9,16,25]
]
 
var largest = 0
for(_, numbers) in interestingNumbers{
  for number in numbers{
    if number > largest {
      largest = number
    }
  }
}
 
print largest

Bucles

var n = 2
while n < 100{//Bucle Repeat
  n*=2
}
 
print(n)
 
var m=2
repeat{//Bucle repeat While
  m*=2
} while m<100
print(M)

Funciones

func saludo(persona: String, day:String)->String{
 return "Hola \(persona) hoy es \(dia)"
}
 
saludo(persona: "Pancho", dia: "Martes")

Si ponemos un _ en la declaración de una función ya no es necesario indicar el tipo antes de la entrada de esta, también podemos cambiar el nombre de variable poniendo delante como queremos que sea:

func saludo(_ persona String, en day:String)->String{// persona con el _ y day con en para indicar el día
  return "Hola \(persona) hoy es \(dia)"
}
 
saludo("Pancho", en: "Martes")

También se pueden anidar funciones dentro de funciones, estas funciones anidadas no se pueden usar fuera de la función que esamos implementando:

func prueba()->String{
  func anidada(){
    print("Hola, soy una funcion anidada")
  }
  return anidada()
}
swift/introduccion.txt · Última modificación: 2023/11/23 10:17 por thejuanvisu