Encabezado Facultad de Ciencias
Presentación

Ciencias de la Computación (plan 2013) 2019-1

Optativas, Programación de Dispositivos Móviles

Grupo 7072, 30 lugares. 30 alumnos.
Profesor Darío Emmanuel Vázquez Ceballos lu mi vi 14 a 15 305 (Yelizcalli)
Ayudante Magdiel Juárez Guerrero ma ju 14 a 15 P118
Ayud. Lab. Mauricio Esquivel Reyes vi 15 a 17 Taller de Sistemas Operativos, Redes de Cómputo, Sistemas Distribuidos y Manejo de Información
 

Objetivo:

El objetivo del curso es que el alumno conozca las principales características de la tecnología móvil, entienda el proceso de desarrollo y las habilidades técnicas necesarias para crear aplicaciones móviles.

En este curso se hará uso de la plataforma Android en su versión 6.0 Marshmallow y posteriores en el entorno de desarrollo Android Studio y el lenguaje de programación java para Android; pero se le brindaran al alumno las herramientas para crear aplicaciones para móviles android.

Prerrequisitos:

Los prerrequisitos para este curso son: Conocimientos básicos del lenguaje de programación Java.

Unidad 1: Introducción

  • ¿Qué es la computación móvil?
  • Ecosistema Móvil: Qué son los dispositivos móviles, sistemas Operativos móviles y entornos de desarrollo móvil.

Unidad 2: Aplicaciones Móviles

  • Categorías de Aplicaciones móviles
  • Pro
  • Contexto histórico y estado actual de android.
  • Entorno de desarrollo integrado Android estudio.
  • Estructura de un proyecto Android.
  • Arquitectura de las plataformas móviles.
  • Ventajas y desventajas de las distintas plataformas de desarrollo móvil.

Unidad 3: Desarrollo de aplicaciones

  • Android: aspectos clave de la plataforma
  • Java en el desarrollo de aplicaciones android.
  • Concepto de activity en android.
  • Ciclo de vida de un activiy.
  • Context en android.
  • Consumo de bibliotecas en android.

Unidad 4: Desarrollo de interfaces de usuario para dispositivos móviles

  • Creación de una interfaz gráfica con mockups
  • Herramienta de edición visual de las vistas
  • Tipos de views en android (TextView, ImageView, EditText, etc.)
  • Agregando estilos a nuestras views.
  • Material Design en android.
  • Layouts en android .

Unidad 5: Elementos de las aplicaciones Android

  • Utilizando bibliotecas externas en android.
  • Entendiendo el concepto de intent.
  • Intent explicito para la navegación en la aplicación.
  • Intent implícito para la comunicación entre activities y recursos del teléfono.
  • Entendiendo el concepto de fragment.
  • GoogleMaps en android.

Unidad 6: Patrones de diseño

  • ListView
  • RecyclerView
  • GridView
  • Patrón Bottom Navigation View
  • Patrón View Pager
  • Patrón Navigation View

Unidad 7: Manejo y persistencia de datos,

  • File IO
  • Shared Preferences
  • Persistencia de datos
  • Uso de servicios web y objetos JSON
  • Consumo de web services mediante Asyntask + GSON
  • Consumo de web services mediante Retrofit + OkhhtpClient +GSON

Unidad 8: Implementación de firebase en android.

  • Firebase authentication
  • Firebase Database
  • Firebase push notifications
  • Firebase ChrashReporting
  • Firebase AdMob

Unidad 9: Publicación y monetización

  • Características de las diferentes tiendas de aplicaciones
  • Publicación en la tienda
  • Análisis de Mercado
  • Estrategias de monetización

Referencias :

  1. Experience, U. (2011). iOS Human Interface Guidelines. Strategies, 274(20), 1591–8. Retrieved from http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/Introduction/Introduction.html
  2. Landis, J., Haff, G. G., & Weatherford, Z. (2006). Android Programming Guide for Beginners.
  3. Zheng, P., & Ni, L. (2012). Smart phone and next generation mobile computing. Morgan Kaufmann Publishers (Vol. XXXIII). https://doi.org/10.1007/s13398-014-0173-7.2
  4. B’far, R. (2005). Mobile computing principles: designing and developing mobile applications with UML and XML. Vasa. https://doi.org/10.1017/CBO9781107415324.004
  5. Nosrati, M., Karimi, R., & Hasanvand, H. (2012). Mobile Computing: Principles, Devices and Operating Systems. World Applied Programming, 2(7), 399–408. https://doi.org/10.1002/wcm.1203/abstract
  6. Interfaces, R. U., For, D. P., & Phones, A. (n.d.). Smashing UI.
  7. Nudelman, G. (2013). Android Design Patterns. John Wiley & Sons, Inc.
  8. Brief, Q. T. (2011). Mobile User Interface, (March).
  9. Gil González, S. (2013). Cómo hacer “Apps” accesibles. Ceapat-Imserso.
  10. Love, S. (2005). Understanding Mobile Human Computer Interaction. Understanding {Mobile} {Human}{Computer} {Interaction}.
  11. Hoober, S., & Berkman, E. (2011). Designing Mobile Interfces. O’Reilly. Neil, T. (2014).
  12. Mobile Design Pattern Gallery. O’Reilly
  13. Marty Stepp, CS 193A: Android Application Development, Web.stanford.edu URL: https://web.stanford.edu/class/cs193a/index.shtml
  14. Android developers , https://developer.android.com.
  15. Firebase, https://firebase.google.com/docs/android.

 


Hecho en México, todos los derechos reservados 2011-2016. Esta página puede ser reproducida con fines no lucrativos, siempre y cuando no se mutile, se cite la fuente completa y su dirección electrónica. De otra forma requiere permiso previo por escrito de la Institución.
Sitio web administrado por la Coordinación de los Servicios de Cómputo de la Facultad de Ciencias. ¿Dudas?, ¿comentarios?. Escribenos. Aviso de privacidad.