[email protected] - NSCoderMad Juan A. Martín MBaaS para IOS:El grande, el guapo y el hazlo tú mismo :-) (Big-Cool-MacGyver) Saturday 19 October 13
Jan 22, 2015
[email protected] - NSCoderMad
Juan A. MartínMBaaS para IOS:El grande, el guapo y el hazlo tú mismo :-) (Big-Cool-MacGyver)
Saturday 19 October 13
•Intro y Presentación•MBaaS•El Grande (Big)•El Guapo (Cool)•El hazlo tú mismo (MacGyver)
Contents...
[email protected] - NSCoderMadJohn A. Martin
Big-Cool-MacGyver
Saturday 19 October 13
Presentación +
Intro
Saturday 19 October 13
[NSCoderNightMad alloc];
Saturday 19 October 13
Grupo de desarrollo Cocoa/Cocoa TouchTenemos 2 citas mensuales:
NSPresentersNSDrinks
@nscoder_madhttp://nscoder-mad.tumblr.com
Saturday 19 October 13
{ “me”: {“speaker” : “Juan A. Martin”, “company”: “CloudOnMobile”, “contact”: { "mail":"[email protected]”, "twitter":"@byjuanamn", "skype":"by-juanamn" }
}}
me = [AboutUs alloc]initWithDream];
Colaboraciones con AGBO
Saturday 19 October 13
MBaaS - Conceptos
Mira nena, aquí hay una cuestión: el conceto es el conceto.
Saturday 19 October 13
MBaaS - Conceptos
• Mobile Backend as a Service. ¿el nuevo midleware?
• http://blogs.forrester.com/michael_facemire/12-04-25-mobile_backend_as_a_service_the_new_lightweight_middleware
Saturday 19 October 13
MBaaS - Conceptos
• Baas nos proporcionan los ingredientes necesarios para construir soluciones web o móviles, olvidándonos de diseñar, construir y mantener nuestro propio Backend.
• Nacen bajo el paraguas de la suma de dos elementos: Grandes proveedores de Cloud + API Business
Saturday 19 October 13
MBaaS - Conceptos
• Estos “ingredientes” son comunes en la mayoría de de Baas:
• SDK mul:plataforma
• Servicios de ges:ón de usuarios (OAuth, propios)
• Integración con redes sociales
• No:ficaciones Push
• Almacenamiento en Cloud
• Construcción de REST API propia
Saturday 19 October 13
MBaaS - Conceptos
• Apps Monoliticas ->
Saturday 19 October 13
El grande
• Microsoft Mobile Services
Saturday 19 October 13
El grande - Mobile Services
• Es el MBaaS de MicrosoK
• Mobile Services desde finales del 2012
• Nos ofrece:
Saturday 19 October 13
El grande - Mobile Services
• Puntos interesantes de este MBaaS
• Custom APIs: Podemos desarrollar nuestras propias Apis de backend...Mola!!
• Scheduler: Tenemos la posibilidad de planificar tareas en background
Saturday 19 October 13
El grande - Mobile Services
• Custom APIs
• Desarrolladas en JS (express.js)
• Permisos a nivel de GET/POST/DELETE/PUT/PATCH
• Expuestas:
• h\ps://miendpoint.azure-‐mobile.net/api/nombreAPI
Saturday 19 October 13
El grande - Mobile Services
• ¿Cómo podemos consumir estas Custom APIs?
INVOKE
Saturday 19 October 13
El grande - Mobile Services
[client invokeAPI:@"Mi-APICOMOSELLAME" body:nil HTTPMethod:@"GET" parameters:parameters headers:headers completion:....];
Saturday 19 October 13
El grande - Mobile Services
DEMO
Saturday 19 October 13
El Guapo
• Parse
Saturday 19 October 13
El Guapo - Parse
• Es el MBaaS de moda, marca tendencia
• Pero debes saber:
• Comprado por Facebook
• Está sobre AWS...no sé por cuanto :empo
• Aún así, es probablemente el mejor para desarrolladores independiente y pequeñas empresas
Saturday 19 October 13
El Guapo - Parse
• No ofrece:
• Integración Redes Sociales
• Ges:ón de usuarios / roles
• UI
• In-‐App Purchase
• Files
Saturday 19 October 13
El Guapo - Parse
• No ofrece:
• Push
• Persistencia
• GeoPoints
•Cloud Code
Saturday 19 October 13
El Guapo - Parse
• Soporta y :ene SDKs para:
Saturday 19 October 13
El Guapo - Parse
• Cloud Code
• Podemos escribir nuestras APIs
• basadas en JS y backbone
• TENEMOS Tareas programadas!!!!! desde sep:embre
Saturday 19 October 13
El Guapo - Parse
• Consumir cloud code es muy sencillo:
[PFCloud callFunctionInBackground:@"NOMBRE-API" withParameters:params block:^(id object, NSError *error) {
Saturday 19 October 13
El Guapo - Parse
DEMO
Saturday 19 October 13
El hazlo tú mismo
• BaaSBox
• Helios
• BackBeem
Saturday 19 October 13
El hazlo tú mismoBaasBox
• BaaSBox
• Backend Open Source
• Basado en Java
• No está ligado a ningún proveedor
• Puedes ser desplegado en cualquier
• En Cloud o en Casa
Saturday 19 October 13
El hazlo tú mismoBaasBox
• Hasta la fecha ofrece SDKs para IOS y Android
• Estos SDKs atacan el Rest Api, que nos proporciona:
• Ges:ón de Usuarios
• Push
• Documents
Saturday 19 October 13
El hazlo tú mismoBaasBox
Saturday 19 October 13
El hazlo tú mismoBaasBox
Saturday 19 October 13
El hazlo tú mismoBaasBox
• Pros
• Es una opción interesante si no tenemos claro dónde hospedar nuestro beackend al inicio del desarrollo
• Podemos desplegarlo en AWS o Azure sin problemas
• No :ene costes, por el momento
Saturday 19 October 13
El hazlo tú mismoBaasBox
• Contras
• Java :-‐)
• futuro $$$$
Saturday 19 October 13
El hazlo tú mismoHelios
• Helios
• Backend libre (MIT License)
• Creado por Ma\ Thompson
• En beta
Saturday 19 October 13
El hazlo tú mismoHelios
• Helios
• Pensado para IOS, podemos hacer:
• Persistencia
• Push
• In-‐App Purchases
• Passbook
• Newsstand
Saturday 19 October 13
El hazlo tú mismoHelios
• Cómo empezamos
• Tenemos que instalar la gema de Helios
• gem install helios
• Si, está basado en Ruby
Saturday 19 October 13
El hazlo tú mismoHelios
• Una vez desarrollado podemos desplegarlo en Heroku
Saturday 19 October 13
El hazlo tú mismoHelios
• Pros:
• no necesitamos infraestructura para comenzar, con nuestro equipo de trabajo es suficiente
• Aprender Ruby
• El autor
Saturday 19 October 13
El hazlo tú mismoHelios
• Contras:
• El autor
• Beta
• La parte de auten:cación/seguridad está un poco verde todavía
Saturday 19 October 13
El hazlo tú mismoBackBeem
• MBaaS en toda regla, ofrece:
• Persistencia
• Data browser
• SDKs y API REST
• Ges:ón de usuarios (Facebook, Twi\er)
Saturday 19 October 13
El hazlo tú mismoBackBeem
• MBaaS en toda regla, ofrece:
• Push
• emails personalizados
• Parte web
• Y además...
Saturday 19 October 13
El hazlo tú mismoBackBeem
• Y además...
• Estadís:cas
• Modelo de colaboladores
• Desarrollado en España
• h\p://backbeam.io
Saturday 19 October 13
Saturday 19 October 13
{ “me”: {“speaker” : “Juan A. Martin”, “company”: “CloudOnMobile”, “contact”: { "mail":"[email protected]”, "twitter":"@byjuanamn", "skype":"by-juanamn" }
}}
me = [AboutUs alloc]initWithDream];
Saturday 19 October 13