Este documento presenta una introducción al desarrollo móvil con Android y Firebase. Explica que Android es un sistema operativo con gran cantidad de usuarios y bajas barreras de entrada para desarrolladores. También describe las herramientas necesarias como Android Studio y Xamarin, así como habilidades como programación orientada a objetos y patrones de diseño. Finalmente, presenta las características y usos de Firebase como base de datos en la nube, autenticación, almacenamiento y más.
2. ¿Quién soy?
Tec. Computación e Informática y Freelance.
Se desempeña también como Software Developer Lead en
Wataweb y, CTO de Fullday.pe y Cooltura App (en
desarrollo). Durante los últimos 8 años, ha participado en
diferentes proyectos de desarrollo de software en los
sectores público y privado. Es organizador de la comunidad
GDG Open en la ciudad Lima, comunidad que busca difundir
el uso de las tecnologías que Google provee.
Publica artículos sobre desarrollo de software en su blog:
http://medium.com/@devpicon y su repo en github
https://github.com/devpicon/
Colaboro con:
3.
4. ¿Por qué
Android?
• Android es uno de los sistemas
operativos con mayor cantidad
de activaciones al año
• Menos barreras de entrada para
el desarrollo
• Rendimiento
• Herramientas de desarrollo –
Android Studio
• Portabilidad
18. Planificación
• Revisión de requerimientos
• Maqueteado
• Material Design
• Determinar la complejidad de la
aplicación
• Priorización de features y fixes
• Esbozar la arquitectura
• Administración de trabajo
19. Desarrollo +
Pruebas
• Programación
• Versionamiento de código
• Pruebas unitarias
• Pruebas de instrumentalización
• Espresso / UI Automator /
AndroidJUnitRunner
• Mocks
• Travis-CI
• Firebase Test Lab
• Xamarin Test Cloud
• Testdroid Cloud
23. Bases de Datos NoSQL
• No SQL o No solo SQL o No Relacional
• Este tipo de base de datos no sigue el modelo tradicional de bases de
datos relacionales.
24. ¿Por qué emplear Bases de Datos NoSQL?
• Por una motivación técnica: manejo de nuevos tipos de datos
multiestructurados.
• Por una motivación de costo: identificar alternativas a software y
hardware propietarios costosos.
• Por agilidad en el desarrollo: la modificación de estructuras permite
una mejor respuesta ante posibles cambios de esquema.
25.
26.
27.
28.
29.
30. ⋅ Base de datos NoSQL alojada
en la nube
⋅ Sincronización y resolución de
conflictos
⋅ Acceso directo desde tu
aplicación
31.
32.
33.
34. ⋅ Autenticación y administración
de cuentas
⋅ Soporta:
⋅ Correo y contraseña
⋅ Google, Facebook, Twitter y
GitHub sign-in
⋅ Sistemas auth existentes