Las mejores APIs y librerías para desarrollar con iOS

Entre iPhone y iPad hay casi 1.000 millones de aparatos con iOS en todo el mundo. Este sistema operativo es cada año más popular que nunca, y poder desarrollar para él es y seguirá siendo de vital importancia para empresas durante los próximos años. Aunque el mundo del desarrollo para sistemas de Apple esté en plena mutación de Objective-C a Swift, ambos lenguajes podrán coexistir durante años.
Las mejores APIs y librerías para desarrollar con iOS
Las mejores APIs y librerías para desarrollar con iOS

BBVA API Market

Entre iPhone y iPad hay casi 1.000 millones de aparatos con iOS en todo el mundo. Este sistema operativo es cada año más popular que nunca, y poder desarrollar para él es y seguirá siendo de vital importancia para empresas durante los próximos años. Aunque el mundo del desarrollo para sistemas de Apple esté en plena mutación de Objective-C a Swift, ambos lenguajes podrán coexistir durante años.

Aunque el mundo del desarrollo para sistemas de Apple esté en plena mutación de Objective-C a Swift, ambos lenguajes podrán coexistir durante años en las bases de código fuente de las aplicaciones. Los programadores podrán elegir entre APIs, frameworks y sistemas que mejor se adapten a sus necesidades en ambos lenguajes. Repasemos algunas API y librerías útiles para el desarrollo con iOS.

MagicalRecord

A pesar de que Core Data pueda parecer sencillo, puede complicarse incluso para proyectos en estado embrionario creando mucho código base extra.

Crear, eliminar y actualizar entidades, almacenar el contexto, crear diferentes estados de Core Data para diferentes entornos. MagicalRecord soluciona todo esto creando un envoltorio sobre Core Data que oculta todo lo que no es relevante. Similar a cómo funciona Active Record en Ruby on Rails, del que toma inspiración, Magical Record permite crear “fetchs” de forma concisa y simple, pero manteniendo toda la potencia y flexibilidad de poder utilizar NSFetchRequest cuando sea necesario.

Por ejemplo, para conseguir un listado de personas ordenadas de forma alfabética almacenadas de forma persistente, tan solo tendremos que escribir esta línea:

NSArray *gente = [Person MR_findAllSortedBy:@”Nombre” ascending:YES];

Si prefieres Swift, puedes utilizar SugarRecord.

ObjectMapper

A la hora de comunicarnos con diferentes APIs en línea, una de las tareas más tediosas y repetitivas es mapear en código las respuestas a los objetos con los que vamos a utilizar los datos. ObjectMapper es muy útil para solucionar este apartado al convertir JSON en objetos y viceversa de forma simple.

Un ejemplo con una clase que gestione los datos de temperatura de un API para datos sobre elementos químicos.

struct Temperatura: Mappable {

     var grados: Double?

     var kelvin: Double?

     init?(_ map: Map) {

     }

     mutating func mapping(map: Map) {

     grados     <- map[“grados”]

     kelvin  <- map[“kelvin”]

     }

}

Si prefieres Swift, puedes utilizar Alamofire Object Mapper.

CloudRail API

La API de Cloud Storage es una librería capaz de unificar varios sistemas de almacenamiento en la nube en los que gestionar datos. Pero en iOS, va mucho más allá. CloudRail SI expande a múltiples facetas sus funciones: interfaces de conexión con redes sociales, métodos de pago, gestión de correo electrónico e incluso SMS.

Los métodos de almacenamiento en la nube, por ejemplo, permiten abstraer de forma técnica los tradicionales métodos de subir, descargar, copiar y mover datos en diferentes proveedores populares. Por ejemplo, descargar un archivo desde Dropbox con Swift es tan sencillo como:

CRCloudRail.setAppKey (“CLAVE\_API\_CLOUDRAIL”)

let cloudStorage : CloudStorageProtocol = Dropbox.init(clientId: “ClientID”, clientSecret: “ClientSecret”)

do{

  let inputStream = try cloudStorage.downloadFileWithPath(“/imagen.jpeg”)

} catch let error{

  print(“Ha ocurrido un error: (error)”)

}

Mientras tanto, la gestión de redes sociales es igual de simple con CloudRail. Un ejemplo para enviar un mensaje público a Facebook:

CRCloudRail.setAppKey(“CLAVE\_API\_CLOUDRAIL”)

let social = Facebook(clientID: “\[clientID]“, clientSecret: “\[clientSecret]“)

do{

try social.postUpdateWithContent(“Contenido del mensaje”)

} catch let error{

                print(“Ha ocurrido un error: (error)”)”

}

Por último, podemos utilizar CloudRail para conectarnos al API de pagos de Stripe o Paypal directamente, o utilizar las API de manejo de JSON de CloudRail para acceder a la API de Customers de BBVA. Con ella, una aplicación de iOS podrá gestionar la información personal y pagos de clientes y usuarios de BBVA.

Combinando Customers API con Payments API los desarrolladores pueden mejorar sus métodos de pago en sencillos pasos. Gestionar la información relativa del cliente antes de realizar el pago puede ayudar a añadir eficiencia y mejorar la tasa de conversión.

Para solicitar la información tan solo envía una petición POST con dos cabeceras HTTP concretas:

Authorization: Basic CREDENCIALES_DE_TU_APP

Content-Type: application/json

POST https://connect.bbva.com/token?grant_type=authorization_code&code=YOURCODE&redirect_uri=YOURREDIRECTURI

Puedes utilizar JSON Model uno de las librerías más veteranas para iOS para gestionar los datos de BBVA Customers o BBVA Payments en JSON sin tener que repetir tu código.

¿Te interesan las APIs financieras? Descubre todas las que te ofrece BBVA

También podría interesarte