Introducción al desarrollo de aplicaciones móviles con Android enfocado a emprendedores, entusiastas que deséen tener una idea de como abordar un desarrollo móvil.
Introducción al desarrollo de aplicaciones móviles con Android enfocado a emprendedores
1. Introducción al desarrollo de
aplicaciones móviles con
Android
Meison Chirinos
Arquitecto de Soluciones
Director General en Abcdroid
www.abcdroid.com
' Una charla enfocada
a emprendedores
2. 1. Aplicaciones móviles ¿Por que son tan útiles?
2. ¿Qué debo tener en cuenta antes de empezar el desarrollo?
3. A punto de empezar, ¿Que recursos necesita el equipo de
programadores?
4. Empezamos a construir:
- Caso práctico : Aplicación android que recomiende restaurantes.
5. Conclusiones finales.
Temario
Abcdroid www.abcdroid.com
3. 1.- Aplicaciones móviles ¿Por que son tan útiles?
Del lado del usuario :
• Aplicaciones mas compactas y simples, esto brinda al usuario mayor facilidad
de uso y mayor rapidez para acceder a la información.
• Aplicaciones que nos acompañan, los usuarios aman estar conectados a internet
en todo momento ¿Has contado cuantas veces al día abres tu whatsapp?.
• Un elemento importante de entretenimiento, muchas aplicaciones ahora son
concebidas no solo para ser útiles si no también divertidas y mantener así a
los usuarios contentos.
Ejemplo de algunas aplicaciones mas usadas :
Abcdroid www.abcdroid.com
4. 1.- Aplicaciones móviles ¿Por que son tan útiles?
Del lado empresarial :
- La empresa obtiene presencia continua en los dispositivos de sus usuarios.
- La empresa aprovecha para ganar mayor notoriedad de sus productos y/o
servicios frente a soluciones de la competencia.
- La empresa logra establecer un canal de comunicación casi constante y a
tiempo real con sus usuarios/clientes, siendo muy favorable el uso de las
famosas notificaciones para enviar anuncios y otros tipos de información.
- Las empresas pueden fortalecer sus
comunicaciones a traves de las redes
sociales integrando a sus aplicativos
las redes que necesiten, por ejemplo
se dá muchas veces que el usuario
quiere compartir algun tipo de información
generada en la app con sus amigos del
facebook, esto le gusta a las empresas ya
que les permite llegar a más personas.
Abcdroid www.abcdroid.com
5. 2.- ¿Que debo tener en cuenta antes de empezar el desarrollo?
En palabras simples (visto mas del lado técnico) y considerando que ya cuentas
con la idea, considera seguir las siguientes pautas y recomendaciones :
1. Tener claro que desarrollarás la version inicial y despues seguirá creciendo.
2. Tener claro el alcance inicial (conjunto de funcionalidades a desarrollar).
3. Partir siempre conciente que si aparecen nuevas funcionalidades en pleno
proceso de desarrollo no definidas en tu alcance inicial puede incrementar los
costos de construcción, es obligatorio saber esto y lo tengas considerado.
4. Elegir entre las diversas alternativas para llevar a cabo la construcción:
• Si sabes programar empezar a desarrollarlo tu mismo.
• Si en tu equipo hay un desarrollador con la capacidad técnica de hacerlo,
encomendarle esta responsabilidad.
• Si tienen los medios económicos contratar a una empresa.
Abcdroid www.abcdroid.com
6. 3.- A punto de empezar
¿Que recursos necesita el equipo de programadores ?
Una de las mejores formas de empezar es brindando al equipo de
desarrolladores desde un inicio las mejores condiciones posibles para las
semanas o meses que tome realizar el proyecto, aunque algunos puntos suenen
obvios igual lo pongo considera lo siguiente:
1.- Computadoras con un buen mouse, teclado y monitor.
2.- Sillas que brinden un adecuado nivel de comodidad.
3.- Una conexion a internet estable y decente.
4.- Algunos dispositivos android con las versiones mas empleadas.
5.- Un juego de AVD's (Dispositivos virtuales) donde probar los avances.
6.- Predisposición clara y abierta a la comunicación fluida dentro del equipo.
Abcdroid www.abcdroid.com
7. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
Arturo trabaja como cocinero en uno de
los restaurantes de Tacna, y a el se le ha
ocurrido crear una aplicación en Android
donde se muestren todos los restaurantes
con sus platos y sus precios, esto
pensando en facilitar los platos del día, se
contacta con nosotros y nos dice lo
siguiente:
Abcdroid www.abcdroid.com
8. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
- Deseo una app que muestre una lista de
restaurantes cercanos a mi ubicación.
- Deseo ver la información de cada plato de
cada restaurante.
- Deseo que cada restaurante que se
registre ingrese su cuenta de credito para
efectuarle el cobro automatico de $100
dolares mensuales por el servicio.
- Deseo empezar con una base de clientes
que ya tengo = 50 restaurantes.
- La aplicación se llamará: kommmida
Abcdroid www.abcdroid.com
9. 4.- Caso práctico: Aplicación android que recomiende
restaurantes.
A.- Prototipo Base
Abcdroid www.abcdroid.com
10. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
A.- Prototipo base:
Luego de algunas reuniones conseguimos plasmar el siguiente prototipo:
Abcdroid www.abcdroid.com
11. 4.- Empezamos a construir.
Caso práctico : Aplicación android que recomiende restaurantes.
B.- Construcción del Backend
Abcdroid www.abcdroid.com
12. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
B.- Construcción del backend:
Ahora que ya conocemos el alcance inicial y tenemos claro lo que debemos
construir, es hora de decidir que tecnología emplearemos.
Luego de una reunión con el equipo de desarrollo se consideraron varias
opciones (usar MySQL, MariaDB, PostgreSQL, Java, Python, Php) finalmente
considerando la experiencia del equipo se decidio emplear lo siguiente:
a) Base de datos : MySQL
b) Lenguaje de lado del servidor : Java
c) Framework: Play Framework!
d) Plantilla HTML basada en Bootstrap.
e) Despliegue: Heroku.
Abcdroid www.abcdroid.com
13. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
B.- Construcción del backend:
Hay muchas formas de abordar el desarrollo, el framework que elegimos nos
permite centrarnos de frente en la lógica de la información a automatizar y
dejar atras aquellas etapas previas de configuración, brindandonos por defecto
una estructura y marco de trabajo facil de usar, listo para empezar a hacer las
cosas de forma productiva, una de la cosas que mas nos gusta es la gestión
de la evolución de la base de datos.
www.playframework.com
Abcdroid www.abcdroid.com
14. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
B.- Construcción del backend:
Construiremos los siguientes servicios rest:
- Listado de restaurantes.
- Detalle de un restaurante.
- Lista de comidas de un restaurante.
- Detalles de un plato seleccionado.
Abcdroid www.abcdroid.com
15. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
B.- Construcción del backend:
Hemos construido los siguientes servicios rest:
- Listado de restaurantes.
- Detalle de un restaurante.
- Lista de comidas de un restaurante.
- Detalles de un plato seleccionado.
Y ya los hemos desplegado en Heroku:
https://www.heroku.com
Abcdroid www.abcdroid.com
16. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
C.- Aplicativo Android
Abcdroid www.abcdroid.com
17. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
Ahora toca culminar el proceso de construcción, para ello retomamos nuestras
pantallas y comenzamos a implementarlas en android.
Abcdroid www.abcdroid.com
18. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
De los prototipos desarrollamos las siguientes pantallas:
(*) Para ello desplegamos los servicios web en Heroku y es desde ahi de donde
son consumidos para el inicio de sesion y el listado de restaurantes.
Abcdroid www.abcdroid.com
19. 4.- Caso práctico :
Aplicación android que recomiende restaurantes.
Puedes ver el resultado de este taller en:
http://kommmida.herokuapp.com/
Y puedes encontrar el código fuente en github:
- https://github.com/ameison/deliveryweb
- https://github.com/ameison/deliverymob
Abcdroid www.abcdroid.com
20. 4.- Conclusiones finales
Si deseas emprender en este sector es ventajoso conocer al menos las
nociones básicas del proceso de construcción de software (para este caso
móvil) ya que esto nos permite no solo entender la complejidad de esta
actividad, ademas de ello nos permite ampliar nuestra creatividad e
imaginacion al conocer los detalles de la implementación tu imaginación
descubre nuevas formas de como hacer las cosas.
Abcdroid www.abcdroid.com
21. FIN
¿Deseas le demos vida
a tu idea ? comunícate
con nosotros ...
Web & Movil Development
- www.fb.com/abcdroid
- hola@abcdroid.pe
- 258 - 3564
Gracias por tu atención !
Meison Chirinos
: mason.xp@gmail.com
: www.fb.com/meison.chirinos
: @ameison
Abcdroid www.abcdroid.com