
Swift High Performance
Kostiantyn Koval
- Editorial
- Packt
- Año
- 2015
- Páginas
- ~212
- Nivel
- Avanzado
De qué trata
Guía especializada y técnica orientada a optimizar el rendimiento y la eficiencia en el lenguaje Swift (centrada en Swift 2.0 y Xcode 7 para iOS y OS X). Está dirigida a desarrolladores experimentados de Apple que ya dominan la sintaxis del lenguaje y los patrones habituales de Cocoa Touch, pero necesitan comprender qué sucede a bajo nivel para eliminar cuellos de botella de procesamiento, memoria y latencia en aplicaciones críticas.
El texto analiza en profundidad la arquitectura del compilador Swift y los costos en tiempo de ejecución. Aborda la gestión de memoria con ARC (Automatic Reference Counting), el impacto en el rendimiento entre tipos por valor (structs, enums) y tipos por referencia (classes), y la eliminación de la sobrecarga de despacho dinámico mediante el uso de final, despacho estático y optimizaciones a nivel de módulo completo (Whole Module Optimization). También profundiza en la selección estratégica de estructuras de datos (Array vs. ContiguousArray, Set y Dictionary), colecciones perezosas con LazySequence, concurrencia y multitarea con Grand Central Dispatch (GCD) para hardware multinúcleo, además del uso de herramientas de diagnóstico como el REPL, LLDB, pruebas de rendimiento con measureBlock en XCTest y las plantillas de Xcode Instruments (Time Profiler y Allocations).
El libro no desarrolla una aplicación móvil comercial completa, sino que articula su enseñanza a través de micro-benchmarks rigurosos, fragmentos de código arquitectónico y ejercicios de optimización paso a paso. Su principal fortaleza es enseñar a razonar sobre la complejidad algorítmica y el costo real de abstracciones que a menudo se asumen gratuitas en Swift. Aunque muchos conceptos de fondo sobre memoria y despacho siguen plenamente vigentes, conviene tener en cuenta que el código se apoya en Swift 2, por lo que queda fuera el modelo moderno de concurrencia estructurada (async/await y actores) y las optimizaciones introducidas en versiones recientes del compilador.
- Swift 2
- Rendimiento
- Optimización de memoria
- ARC
- Grand Central Dispatch
- Xcode Instruments
- Estructuras de datos
- Lazy evaluation
- Benchmarking
- LLDB
¿Cómo enseña?
Teoría + práctica
- ✗ Sin ejercicios
- ✗ Sin proyectos

