¿Cuáles son las bibliotecas de código abierto que todo desarrollador de iOS debería conocer? Podemos crear una wiki de respuestas con este esfuerzo.

Aquí hay 10 bibliotecas que creemos que todo desarrollador de iOS debería conocer

1. Alamofire

Cuando quieres abstraer y simplificar la creación de redes en tu aplicación, Alamofire es el camino a seguir. Alamofire es una biblioteca de redes HTTP, construida sobre NSURLSession y el Sistema de Carga de URLs de la Fundación. Envuelve muy bien los mecanismos de red en una interfaz Swift elegante y sencilla.

2. SwiftyJSON

Los tipos explícitos en Swift aseguran que no cometamos errores en nuestro código y causemos bugs por ello. Pero a veces es bastante doloroso lidiar con ello, especialmente cuando se trabaja con JSON. Por suerte, SwiftyJSON está aquí para ayudarnos a tratar con datos JSON en Swift de una manera más legible. El desenvolvimiento opcional se maneja automáticamente para ti también!

SwiftyJSON también juega muy bien con Alamofire.

3. ObjectMapper

Si alguna vez has escrito una aplicación que descarga información a través de una API, probablemente has pasado mucho tiempo escribiendo un código para mapear una respuesta a tus objetos. ObjectMapper te ayuda a convertir una respuesta JSON en tu objeto modelo, y viceversa. En otras palabras, te ayuda a mapear JSON a objetos, y los objetos de vuelta a JSON. También soporta objetos anidados.

También vale la pena mencionar AlamofireObjectMapper, una extensión de Alamofire que convierte los datos de respuesta JSON en objetos Swift cuando se utiliza ObjectMapper.

4. Quick

Quick es un marco de desarrollo orientado al comportamiento para Swift, inspirado enRSpec, Specta y Ginkgo. Quick viene con Nimble, que es un framework matcher para sus pruebas.

5. Eureka

Eureka te ayuda a escribir formularios dinámicos con vista de tabla de una manera sencilla y elegante. Consta de filas, secciones y formularios. Si tu aplicación contiene muchos formularios, Eureka resulta ser un verdadero ahorro de tiempo.

6. RxSwift

RxSwift es un framework de Swift para la Programación Reactiva Funcional. Para ser más específicos, RxSwift es una versión Swift de Rx y su objetivo es permitir una fácil composición de operaciones asíncronas y flujos de eventos/datos. La observación de KVO, las operaciones asíncronas y los delegados están todos unificados bajo la abstracción de la secuencia, lo que hace de RxSwift un marco tan poderoso. Si alguna vez has trabajado con ReactiveCocoa, estarás familiarizado con el concepto.

7. SnapKit

SnapKit es una librería de Auto Layout que simplifica la escritura de auto layout en código con una cantidad mínima de código necesario sin perder legibilidad. Es type safe por diseño para ayudarte a evitar errores de programación mientras codificas tu interfaz de usuario.

8. Spring

Spring es una librería de animación que te ayuda a crear animaciones tanto en código como directamente en Storyboard. Puedes crear animaciones en Storyboard utilizando atributos en tiempo de ejecución (establecidos a través de propiedades IBInspectable). Spring ha crecido hasta convertirse en una biblioteca de animación completamente desarrollada que soporta un buen número de animaciones, transiciones y propiedades ya escritas.

9. Kingfisher

Kingfisher es una biblioteca ligera para descargar y almacenar en caché imágenes de la web. La descarga y el almacenamiento en caché se realiza de forma asíncrona. Las imágenes descargadas se almacenan en caché tanto en memoria como en disco, lo que podría mejorar bastante la experiencia de tu app.

10. CoreStore

CoreStore es una librería que envuelve a Core Data. Su objetivo es proporcionar la seguridad de tipos y la elegancia de Swift al interactuar con Core Data. La API de CoreStore proporciona todos los métodos comunes para interactuar eficazmente con tu base de datos.