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.

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