← Especialidades formativas

Especialidad formativa

Android mobile developer

IFCD61 300 h
Ver contenido del curso

Qué aprenderás

Desarrollar aplicaciones móviles en lenguaje Android.

Contenido del curso

01

Programación orientada a objetos en Java

  • OBJETIVO
  • Dominar los fundamentos del desarrollo orientado a objetos y desarrollar aplicaciones usando el lenguaje de programación Java.
  • CONOCIMIENTOS / CAPACIDADES COGNITIVAS Y PRÁCTICAS
  • Identificación de los fundamentos de la programación orientada a objetos.
  • Inmersión a la programación orientada a objetos: clases, objetos, métodos y variables de instancia. Constructores de clases.
  • Modificadores de clase (public, private, static...) y composición de clases.
  • Inmersión a las estructuras de datos: enumerados, listas y hashmaps.
  • Uso de packages y manejo de excepciones.
  • Identificación de los conceptos básicos del lenguaje Java así como de las herramientas para desarrollar y ejecutar un programa escrito en este lenguaje.
  • Inmersión a la tecnología Java: estructuras de control de flujo, métodos y funciones.
  • Instalación de un entorno de desarrollo Java, compilado y ejecución de programas Java y debugging del código.
  • Distinción de los entornos, fases y herramientas necesarias para realizar proyectos Java y web.
  • Identificación de los factores clave de un problema.
  • Planificación y gestión del ciclo de vida de una aplicación.
  • Elección de un programa Java a partir de los recursos disponibles para solucionar un problema.
  • Aplicación de aspectos avanzados de programación orientada a objetos.
  • Herencia de clases y el polimorfismo.
  • Diseño de una estructura jerárquica de clases incluyendo clases abstractas y finales.
  • Definición de interfaces de clases.
  • Interpretación de la información de archivos locales en sistemas remotos a través de conexiones web y en bases de datos.
  • Lectura y escritura de archivos, formatos de ficheros (JSON, XML) y adaptadores.
  • Fundamentos de páginas web, servicios web y APIs. Conexión a servicios web desde Java.
  • Fundamentos de bases de datos. Conexión y uso de bases de datos desde Java.
  • Gestión e integración de la información de diferentes fuentes de datos.
  • Adquisición de buenas prácticas de programación y de revisión de código, uso de sistemas de controles de versiones y metodologías de trabajo ágiles.
  • Buenas prácticas de desarrollo Java.
  • Desarrollo de proyectos en entornos colaborativos de forma coordinada.
  • Sistemas de control de versiones (Github o similares).
  • Fundamentos de metodologías de programación ágiles.
  • Generación de documentos técnicos para los usuarios de la aplicación.
  • HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
  • Capacidad para analizar los factores relevantes de un problema usando el paradigma de programación orientada a objetos.
  • Autonomía para planificar, diseñar y programar los componentes de un proyecto orientado a objetos usando tecnologías Java y web.
  • Coordinación y planificación de proyectos en equipo con el uso de las herramientas para controlar las tareas de desarrollo y la evolución del código.
02

Fundamentos de Android

  • OBJETIVO
  • Interpretar la estructura básica de una aplicación Android y diseñar interfaces de usuario en dispositivos Android.
  • CONOCIMIENTOS / CAPACIDADES COGNITIVAS Y PRÁCTICAS
  • Distinción de la estructura básica de una aplicación Android, el entorno de programación y las herramientas para desarrollar aplicaciones.
  • Arquitectura de un proyecto.
  • Android Studio, SDK, emuladores.
  • Componentes de un proyecto: manifiesto, ficheros de código y recursos.
  • Actividades. El ciclo de vida de una actividad.
  • Diseño de interfaces de usuario en dispositivos Android.
  • Color y percepción. Principios básicos de diseño.
  • Diseño de interfaces para dispositivos móviles: Limitaciones, uso del espacio, interacciones, interrupciones.
  • Modelo-Vista-Controlador.
  • Elementos de interfaz básicos en Android: Layouts, Fragmentos.
  • CardView y Recycler View.
  • Creación de diálogos y Splash screens.
  • Navegación entre actividades.
  • Gestión del acceso y la persistencia de datos en Android.
  • Ficheros de preferencias.
  • Acceso a dispositivos externos (USB).
  • Exploración de ficheros con Android Studio.
  • Acceso a bases de datos.
  • Acceso a servicios web.
  • Programación de una aplicación Android compleja.
  • Intentos y filtros.
  • Notificaciones internas.
  • Uso de servicios de Geolocalización.
  • Programación de tareas asíncronas.
  • Interpretación del proceso de publicación de una aplicación y dominio de los fundamentos de técnicas de monetización de aplicaciones.
  • Usabilidad: concepto, estudios de usabilidad.
  • Tiendas de aplicaciones.
  • Google Play.
  • Preparación de la aplicación para la publicación.
  • Formas de monetización de aplicaciones.
  • Gestión de la tienda.
  • HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
  • Capacidad para analizar los factores relevantes de un problema y para proponer una solución mediante el diseño de una aplicación móvil para sistemas Android.
  • Autonomía para diseñar la arquitectura de una aplicación Android y para avanzar en las diferentes fases de su desarrollo usando el lenguaje Java.
  • Coordinación de proyectos en equipo utilizando las herramientas adecuadas desde la conceptualización de la aplicación Android, su desarrollo y hasta la publicación.
  • Actitud proactiva y de mejora continua para adaptarse a las continuas evoluciones del sistema Android.
03

Android avanzado

  • OBJETIVO
  • Distinguir los fundamentos de la programación en Android y las diferencias con Java, aplicar vistas avanzadas para la creación de interfaces e identificar el conjunto de librerías, herramientas y guías de Android Jetpack.
  • CONOCIMIENTOS / CAPACIDADES COGNITIVAS Y PRÁCTICAS
  • Distinción de los fundamentos de la programación en Android usando el lenguaje Kotlin y sus diferencias con el desarrollo en Java.
  • Fundamentos de Kotlin: Colecciones, Creación de clases.
  • Lambdas y programación funcional.
  • Kotlin Coroutines.
  • Aplicación de algunas vistas avanzadas para la creación de interfaces.
  • Animaciones (transiciones entre pantallas y animaciones de una vista).
  • WebView.
  • Material Design.
  • Conexión de una aplicación con un servidor remoto de back-end para enviar notificaciones y almacenar datos en bases de datos NoSQL.
  • Conexión con back-end y notificaciones remotas.
  • Firebase.
  • Configuración de la aplicación y del servidor.
  • Almacenamiento y sincronización de datos.
  • Seguridad de datos.
  • Identificación del conjunto de librerías, herramientas y guías de Android Jetpack.
  • Android Jetpack.
  • Componentes de Foundation, Arquitectura, Comportamiento y Componentes de IU: Lifecycle, Fragmentos, Notificaciones, Permisos.
  • Creación de un desarrollo utilizando programación reactiva a través de datos observables.
  • Reactive programming.
  • El patrón Observer.
  • RxJava.
  • Observar eventos.
  • Análisis de arquitecturas avanzadas de desarrollo Android como MVP o MVVM.
  • Modelo View Presenter.
  • Modelo View ViewModel.
  • Situación de los fundamentos de desarrollo móvil en otras plataformas.
  • La plataforma iOS.
  • Desarrollos móviles multiplataforma.
  • HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
  • Capacidad para identificar, analizar y diseñar proyectos de desarrollo móvil que requieran el uso de componentes o integraciones avanzadas.
  • Autonomía para diseñar la arquitectura de una aplicación Android, y para avanzar en las diferentes fases de su desarrollo usando el lenguaje Kotlin.
  • Coordinación de proyectos móviles multiplataforma en equipo con el uso de las herramientas adecuadas de desarrollo en Android avanzado e integración con sistemas de otras plataformas móviles.
  • Trasladar el valor añadido de la tecnología móvil a los procesos de desarrollo e innovación en empresas y organizaciones.

Especialidad formativa

¿Quieres esta formación para tu organización?