Swift
TOPICS
Marzo 2019
Conceptos básicos de Swift - Funciones y Clases
Marzo 7 | Swift
Funciones y Clases
// Funciones
func saluda_void() {
print("¡Hola Mundo!")
}
func saluda() -> String {
return "¡Hola Mundo!"
}
func saluda(nombre:String) -> String {
return "Hola \(nombre)"
}
func suma(a:Int,b:Int) -> Int {
return a + b
}
print(saluda_void())
print(saluda())
print(saluda(nombre: "Jorge"))
print(suma(a: 2, b: 3))
// Clases
class Persona {
var nombre : String
var edad : Int
init(\_nombre:String, \_edad:Int) {
self.nombre = \_nombre
self.edad = \_edad
}
func saluda() -> String {
return self.nombre + " te saluda"
}
}
let persona = Persona(\_nombre: "Jorge", \_edad: 20)
print("La persona \(persona.nombre) tiene \(persona.edad) años")
print(persona.saluda())
Conceptos básicos de Swift - Control y Datos
Marzo 6 | Swift
Control y Datos
// >> Switch
let variableNumerica = 3
switch variableNumerica {
case 1:
print("El varlor es 1")
case 2:
print("El valor es 2")
case 3...10: // Utilizar rangos
print("El valor es igual o mayor a 3 y menor a 10")
default:
print("El valor es mayor a 10")
}
let diaDeLaSemana = "Martes"
switch diaDeLaSemana {
case "lunes","miercoles","viernes":
print("Promocion A")
case "martes","jueves":
print("Promocion B")
case "sabado":
print("Promocion C")
default:
print("Sin Promocion")
}
// FOR
for i in 1...10 {
print("Contador \(i)")
}
let abecedario = "ABCDEFGHIJKLMN"
for letra in abecedario {
print(letra)
}
let miArray = ["A","B","C","D","E","F"]
for item in miArray {
print("Item:\(item)")
}
// ARRAYS
// Los arrays deben de ser de un solo tipo de dato
var varArray = ["A","B","C","D","E","F"]
varArray.count
varArray[0]
varArray.append("G")
varArray.remove(at: 0)
varArray.removeLast()
varArray.insert("A", at: 0)
// TUPLAS
// Las tuplas pueden contenter diferentes tipos de datos
var miTupla = ("iPhone XS", 10, 9999.99, false)
let varDatoDeTupla = miTupla.0 // iPhone XS
let (producto, cantidad, precio, promocion) = miTupla
Conceptos básicos de Swift - Variables
Marzo 5 | Swift
Variables
// Declaración de Variables
var expresivaAsignacion : String = "Valor"
print(expresivaAsignacion)
var expresiva : String = ""
expresiva = "Valor"
print(expresiva)
var intuitiva = "Adivina"
print(intuitiva)
// Constantes
let constateAsignacion : String = "ValorConstante"
print(constateAsignacion)
let pi = 3.1416
print(pi)
// Opcionales
var opcionalCadena : String? = nil
var opcional : Int? = nil
// ¿Como trabajar con opcionales?
print(opcional) // nil
print(opcional ?? 0) // Provide a default value
print(opcional as Any) // Explicit Cast to Any para evitar errror
print(opcional!) // Force-unwrap. Error si es nil
// Optional Binding
if let opcbin = opcional {
print(opcbin)
} else {
print("Sin valor")
}
// >> Manejo de Cadenas
var frase = "Mundo!"
print("Hola " + frase)
print("Hola",frase)
print("Hola \(frase)")
let stringMultilinea = """
Para crear un texto Multilinea
Se utilizan tres comillas al abrir y al cierre
Las ultimas comillas deben de estar en una nueva linea
"""
let caracter : Character = "A"
// Cmd + Ctrl + Space
var emojis = "😇"
// Concatenacion
emojis.append(caracter)
// Funciones para cadenas
emojis.count
emojis.isEmpty
stringMultilinea.prefix(10)
// Swift 5 - Raw Strings
var rawString = #"Usar "comillas" sin secuencias de escape"#
var rawString2 = #"Usar "comillas" junto con variables \#(frase)"#