Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Google App Engine como back-end para apps móviles

Google App Engine como back-end para apps móviles

Charla que se explica lo fácil que es enlazar nuestra App móvil a un backend en Google App Engine. Veremos también sus ventajas e inconvenientes.

Avatar for Esteban Dorado Roldan

Esteban Dorado Roldan

November 28, 2013
Tweet

More Decks by Esteban Dorado Roldan

Other Decks in Programming

Transcript

  1. Dev web and web mobile GDG Granada Organizer [email protected] mresti

    @Mr_Esti ESTEBAN DORADO ROLDÁN GAE como backend de apps mobile
  2. GAE como backend de apps mobile ¿Qué es GAE? •

    GAE es PaaS • GAE permite ejecutar aplicaciones web en las infraestructuras de Google • Características: ◦ Las aplicaciones son fáciles de crear, de mantener y de escalar. ◦ Dominio propio o un subdominio http: //subdominio.appspot.com
  3. GAE como backend de apps mobile ¿Qué es GAE? •

    Lenguajes de programación: ◦ Python ◦ Java ◦ Go ¡¡Experimental!! ◦ PHP ¡¡Experimental!! • Pago por consumo • Alta disponibilidad y alta replicación • Administración remota • SDK con entorno de desarrollo local
  4. GAE como backend de apps mobile Ventajas • Escalabilidad automática.

    • Alojamiento rentable ◦ Para prototipos ◦ Para webs/plataformas ◦ Cuota gratuita: 500MB de DB y 5 millones de visitas mensuales ~ Valores aprox.
  5. GAE como backend de apps mobile Datastore • Base de

    datos NOSQL • Datastore es muy rápido • Datastore: ¡¡CUESTA DINERO!! • Interfaz de consulta a través de una cadena, GQL (Google Query Language) • GQL no puede ejecutar JOINS en las consultas SELECT
  6. GAE como backend de apps mobile Datastore Entity != Entrada

    • Dos entities del mismo Kind no tienen porqué tener las mismas propiedades • Una propiedad puede contener uno o múltiples valores • Las Queries son para echarles de comer a parte • Indexes!!
  7. GAE como backend de apps mobile Datastore Entity != Entrada

    • Dos entities del mismo Kind no tienen porqué tener las mismas propiedades • Una propiedad puede contener uno o múltiples valores • Las Queries son para echarles de comer a parte • Indexes!!
  8. GAE como backend de apps mobile Datastore Entity != Entrada

    • Dos entities del mismo Kind no tienen porqué tener las mismas propiedades • Una propiedad puede contener uno o múltiples valores • Las Queries son para echarles de comer a parte • Indexes!!
  9. GAE como backend de apps mobile Objectify • Permite modelar

    las Entities como clases (a lo ORM) • Menos verbosa que al API de bajo nivel del Datastore • Realiza optimizaciones por nosotros (p.e. cachea resultados)
  10. GAE como backend de apps mobile En GAE.. • Ejecutar

    una instancia cuesta dinero • El datastore cuesta dinero • Hacer las cosas mal puede costar mucho dinero
  11. GAE como backend de apps mobile { GDG -> Dev

    Gift } https://cloud.google.com/resources/starterpack/
  12. GAE como backend de apps mobile Recursos • Documentación de

    GAE (Español) • GAE Console Admin • Training GAE (English) • Codelab: GAE using Python (English) • Github: Google Cloud Platform
  13. GAE como backend de apps mobile Project tips • Datastore:

    ◦ Bares ◦ Comentarios • Tecnologías: ◦ Mobile: Android ◦ Backend: GAE
  14. GAE como backend de apps mobile Steps • Creamos un

    proyecto en Android (normal) • Seleccionar proyecto -> Google -> Generate App Engine backend… • Creamos la Entity Class (Bares) • Generamos EndPoints Class • Generamos Cloud EndPoints Client Library desde GAE project • Una clase que extienda de Android AsyncTask • Testeamos