
Reactive Programming with Swift
Cecil Costa
- Editorial
- Packt
- Año
- 2016
- Páginas
- ~238
- Nivel
- Intermedio
De qué trata
Guía práctica de Cecil Costa orientada a la adopción de la Programación Funcional Reactiva (FRP) en el desarrollo para iOS utilizando Swift 2 y Xcode 7. Está destinada a desarrolladores intermedios que desean superar las limitaciones de los patrones imperativos habituales (como delegados múltiples, callbacks anidados y notificaciones de NSNotificationCenter) para construir aplicaciones asíncronas más fluidas, predecibles y fáciles de mantener.
El libro instruye en el uso de ReactiveCocoa (específicamente la versión RAC 4 adaptada a Swift), detallando los bloques fundamentales de la reactividad: flujos de eventos (event streams), señales continuas (Signal), productores fríos (SignalProducer), eventos del ciclo de vida y objetos Disposable. Enseña a manipular datos mediante operadores funcionales (map, filter, reduce, combineLatest, zip), a enlazar dinámicamente controles de interfaz de UIKit (como UITextField, UIButton o UISlider) con los modelos de datos, a gestionar llamadas de red asíncronas y a integrar dependencias con CocoaPods y Carthage. Además, dedica secciones específicas a la escritura de pruebas unitarias automatizadas con XCTest y al diagnóstico de fugas de memoria con Instruments.
Además de pequeños ejemplos de enlaces reactivos, la práctica principal se concentra en un proyecto de migración integral: se toma una aplicación funcional de seguimiento de métricas de salud (health tracker) estructurada en MVC convencional y se refactoriza íntegramente hacia una arquitectura reactiva basada en flujos continuos. Su mayor virtud consiste en proporcionar un punto de entrada gradual y pedagógico a la reactividad en el ecosistema de Apple; sin embargo, conviene tener en cuenta que ReactiveCocoa sufrió posteriores divisiones (separándose en ReactiveSwift) y que la industria evolucionó más adelante hacia RxSwift y Apple Combine, por lo que muchas firmas y métodos específicos de RAC 4 han quedado en desuso.
- Swift 2
- ReactiveCocoa
- Programación Funcional Reactiva
- Signal y SignalProducer
- Flujos de datos
- UIKit
- Asincronía
- Pruebas unitarias
- Instruments
- CocoaPods
¿Cómo enseña?
Teoría + práctica
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Migración reactiva de Health Tracker
Refactorización completa de una aplicación de registro de salud y métricas de usuario, migrando su arquitectura MVC imperativa original hacia flujos de datos asíncronos y bindings de interfaz con ReactiveCocoa.

