El flujo de control en Swift es fundamental para dirigir la ejecución de tu código basado en condiciones y repeticiones. En esta sección, aprenderás a utilizar las estructuras de control más comunes: condicionales y bucles.
- Condicionales
if y else
La estructura if permite ejecutar un bloque de código si una condición es verdadera. Puedes agregar una cláusula else para ejecutar otro bloque si la condición es falsa.
Sintaxis:
if condición {
// Código a ejecutar si la condición es verdadera
} else {
// Código a ejecutar si la condición es falsa
}Ejemplo:
else if
Puedes encadenar múltiples condiciones usando else if.
Sintaxis:
if condición1 {
// Código a ejecutar si condición1 es verdadera
} else if condición2 {
// Código a ejecutar si condición2 es verdadera
} else {
// Código a ejecutar si ninguna condición es verdadera
}Ejemplo:
let temperatura = 25
if temperatura > 30 {
print("Hace mucho calor.")
} else if temperatura < 10 {
print("Hace mucho frío.")
} else {
print("El clima es agradable.")
}switch
El switch es útil para comparar un valor contra múltiples posibles casos.
Sintaxis:
switch valor {
case valor1:
// Código a ejecutar si valor es igual a valor1
case valor2:
// Código a ejecutar si valor es igual a valor2
default:
// Código a ejecutar si valor no coincide con ningún caso
}Ejemplo:
let calificación = "B"
switch calificación {
case "A":
print("Excelente")
case "B":
print("Bueno")
case "C":
print("Suficiente")
default:
print("Calificación no reconocida")
}
- Bucles
for-in
El bucle for-in se utiliza para iterar sobre secuencias como rangos, arrays, diccionarios, etc.
Sintaxis:
Ejemplo:
while
El bucle while ejecuta un bloque de código mientras una condición sea verdadera.
Sintaxis:
Ejemplo:
repeat-while
El bucle repeat-while es similar al while, pero garantiza que el bloque de código se ejecute al menos una vez.
Sintaxis:
Ejemplo:
Ejercicios Prácticos
Ejercicio 1: Condicionales
Escribe un programa que determine si un número es positivo, negativo o cero.
Solución:
let numero = -3
if numero > 0 {
print("El número es positivo.")
} else if numero < 0 {
print("El número es negativo.")
} else {
print("El número es cero.")
}Ejercicio 2: Bucles
Escribe un programa que imprima los números del 1 al 10 usando un bucle for-in.
Solución:
Ejercicio 3: switch
Escribe un programa que determine el tipo de día de la semana basado en un número (1 para Lunes, 2 para Martes, etc.).
Solución:
let dia = 3
switch dia {
case 1:
print("Lunes")
case 2:
print("Martes")
case 3:
print("Miércoles")
case 4:
print("Jueves")
case 5:
print("Viernes")
case 6:
print("Sábado")
case 7:
print("Domingo")
default:
print("Número de día no válido")
}Resumen
En esta sección, aprendiste sobre las estructuras de control en Swift, incluyendo condicionales (if, else if, else, switch) y bucles (for-in, while, repeat-while). Estas herramientas son esenciales para dirigir el flujo de tu programa basado en condiciones y repeticiones. Practica estos conceptos con los ejercicios proporcionados para reforzar tu comprensión. En el próximo módulo, exploraremos funciones y closures en Swift.
Dominar Xcode: De Principiante a Avanzado
Módulo 1: Introducción a Xcode
- Comenzando con Xcode
- Entendiendo la Interfaz de Xcode
- Creando Tu Primer Proyecto en Xcode
- Navegación Básica en Xcode
Módulo 2: Conceptos Básicos de Swift en Xcode
- Introducción a la Programación en Swift
- Variables y Constantes
- Tipos de Datos y Operadores
- Flujo de Control
- Funciones y Closures
Módulo 3: Construcción de Interfaces de Usuario
- Introducción a Interface Builder
- Diseñando con Storyboards
- Auto Layout y Restricciones
- Usando Previews de Xcode
- Creación de Componentes de UI Personalizados
Módulo 4: Trabajando con Datos
Módulo 5: Depuración y Pruebas
- Conceptos Básicos de Depuración
- Uso de Puntos de Interrupción
- Pruebas Unitarias
- Pruebas de UI
- Pruebas de Rendimiento
Módulo 6: Funciones Avanzadas de Xcode
- Uso de Instruments para Optimización de Rendimiento
- Técnicas Avanzadas de Depuración
- Configuraciones de Compilación Personalizadas
- Scripting con Xcode
- Integración con Sistemas de Integración Continua
Módulo 7: Despliegue de Aplicaciones
- Preparación para la Subida a la App Store
- Creación de Capturas de Pantalla para la App Store
- Gestión de Metadatos de la App Store
- Subiendo Tu Aplicación
- Mejores Prácticas Post-Subida
