
Learning Swift, 2nd Edition
Jon Manning, Paris Buttfield-Addison, Tim Nugent
- Editorial
- O'Reilly
- Año
- 2017
- Páginas
- ~516
- Nivel
- Básico
De qué trata
Obra práctica enfocada en el aprendizaje del lenguaje Swift 3 y en el desarrollo de software moderno para todo el ecosistema de hardware de Apple: macOS (Sierra), iOS (iOS 10) y watchOS (watchOS 3) utilizando Xcode 8. Está dirigida a programadores con experiencia previa en otros entornos o lenguajes (como JavaScript, Java, Python o C#) que desean realizar una inmersión completa y sistemática en el desarrollo nativo de Apple sin necesidad de aprender Objective-C.
El temario parte de una revisión exhaustiva de la sintaxis y características de Swift 3: tipado estricto, tipos opcionales, colecciones, cierres (closures), enumeraciones avanzadas, structs frente a clases, protocolos, genéricos y manejo de errores con `try`/`catch`. A continuación, traslada estos conocimientos a las APIs de interfaz de Cocoa (AppKit en macOS), Cocoa Touch (UIKit en iOS) y WatchKit (watchOS). Enseña la arquitectura documental con `NSDocument`, diseño de vistas adaptables con Storyboards, geolocalización mediante Core Location, integración multimedia (captura con cámara y fotos), libreta de contactos con el framework Contacts, notificaciones de usuario, pruebas unitarias con XCTest y sincronización de datos con iCloud.
El núcleo formativo del libro consiste en la construcción incremental de una solución multiplataforma de gestión de notas (Notes app) con tres aplicaciones completas: una versión de escritorio para Mac centrada en la edición de documentos y persistencia en iCloud, una versión móvil para iPhone/iPad con soporte táctil, ubicación geográfica y fotos adjuntas, y una app compañera para Apple Watch que permite consultar y dictar notas. Su punto fuerte reside en mostrar cómo estructurar código compartido y sincronizar el estado entre dispositivos de un mismo ecosistema. Conviene tener presente que no incluye SwiftUI ni Combine (lanzados en 2019), pero es una excelente guía para dominar la programación orientada a protocolos y el desarrollo multiterminal clásico en Swift.
- Swift 3
- Xcode 8
- iOS 10
- macOS Sierra
- watchOS 3
- Cocoa
- Cocoa Touch
- WatchKit
- iCloud
- Core Location
- XCTest
¿Cómo enseña?
Con proyectos
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Aplicación de notas para macOS
Aplicación de escritorio desarrollada con AppKit y NSDocument que implementa edición de texto, guardado de archivos locales y sincronización automática con iCloud.
Aplicación de notas móvil para iOS
App para iPhone y iPad estructurada con UIKit que organiza notas en tablas navegables, añade geolocalización con Core Location, adjunta imágenes y programa notificaciones.
Extensión y aplicación complementaria para watchOS
Aplicación para Apple Watch creada con WatchKit que sincroniza el catálogo de notas del usuario y permite la creación rápida de notas mediante entrada de voz.

