Biblioteca estándar de Swift: revisión completa para iOS/macOS

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

Biblioteca estándar de Swift (iOS/macOS): revisión completa



La biblioteca estándar de Swift es un conjunto fundamental de tipos, protocolos y funciones sobre el que se construye todo el desarrollo para iOS, macOS, watchOS y tvOS. A diferencia de muchos lenguajes donde la biblioteca estándar es minimalista, Swift ofrece un rico conjunto de herramientas directamente "listas para usar". En este artículo, analizaremos en detalle los componentes clave de la biblioteca que se utilizan en el desarrollo diario.



Tipos de datos y protocolos principales



La base de la biblioteca la constituyen tipos primitivos y protocolos que garantizan la uniformidad en el trabajo con datos.



  • Protocolos de igualdad y comparación: Equatable, Comparable, Hashable — permiten comparar y generar hash de objetos.
  • Protocolos de representación: CustomStringConvertible, CustomDebugStringConvertible — para la descripción textual de objetos.
  • Tipos básicos: Int, Double, Bool, String, Character — redefinidos para máximo rendimiento.


// Ejemplo de uso de protocolosstruct Persona: Equatable, CustomStringConvertible {    let nombre: String    let edad: Int        var description: String {        return "\\(nombre), \\(edad) años"    }}

let alicia = Persona(nombre: "Alicia", edad: 30)let bob = Persona(nombre: "Bob", edad: 25)print(alicia == bob) // falseprint(alicia) // "Alicia, 30 años"


Colecciones: arrays, diccionarios y conjuntos



Swift proporciona tres tipos principales de colecciones, optimizadas para diferentes escenarios de uso.



Arrays (Array)

Colecciones ordenadas con acceso aleatorio. Soportan expansión y reducción dinámica.



var numeros: [Int] = [1, 2, 3, 4, 5]numeros.append(6)numeros.remove(at: 0)let filtrados = numeros.filter { $0 > 3 }print(filtrados) // [4, 5, 6]


Diccionarios (Dictionary)

Colecciones no ordenadas de tipo "clave-valor". Las claves deben ser Hashable.



var capitales: [String: String] = [    "Rusia": "Moscú",    "Francia": "París",    "Japón": "Tokio"]capitales["Alemania"] = "Berlín"if let capitalRusia = capitales["Rusia"] {    print("La capital de Rusia es \\(capitalRusia)")}


Conjuntos (Set)

Colecciones no ordenadas de elementos únicos. Ideales para verificar pertenencia y operaciones matemáticas.



let conjuntoA: Set = [1, 2, 3, 4]let conjuntoB: Set = [3, 4, 5, 6]let interseccion = conjuntoA.intersection(conjuntoB)let union = conjuntoA.union(conjuntoB)print(interseccion) // [3, 4]print(union) // [1, 2, 3, 4, 5, 6]


Trabajo con cadenas



Las cadenas en Swift son colecciones de caracteres Unicode, lo que hace que trabajar con internacionalización sea extremadamente sencillo.



  • Índices de cadenas: startIndex, endIndex, index(_:offsetBy:) — navegación segura por caracteres.
  • Interpolación: "\\(variable)" — inserción de valores en una cadena.
  • Literales multilínea: """ """ — formato conveniente.


let saludo = "¡Hola, mundo!"let primerCaracter = saludo[saludo.startIndex] // "¡"let indice = saludo.index(saludo.startIndex, offsetBy: 7)let subcadena = saludo[indice...] // "mundo!"

// Interpolación y multilínealet nombre = "Swift"let descripcion = """El lenguaje \\(nombre) se utiliza para el desarrolloen iOS y macOS."""print(descripcion)


Tipos opcionales y trabajo con nil



Swift ofrece un trabajo seguro con valores ausentes a través de tipos opcionales. Esta es una de las características clave del lenguaje.



var nombreOpcional: String? = "Alejandro"// Optional                    

Recommendations