Curso

ARQUITECTURAS SOFTWARE Y DISEÑO AVANZADO DE INTERFACE USUARIO

  • Desde: 7/1/19
  • Hasta: 25/3/19*
  • Campus Virtual
  • Idioma: Castellano
  • Online

Preinscripción desde el 7/11/18

(*) Hasta el 5/4/19 para la finalización de trabajos.

Promovido por:
Escuela Politécnica Superior de Gandia

Responsable de la actividad:



Modalidad

Presencial Online Emisión en directo

0 horas


80 horas


0 horas

Lugar de impartición
Curso modalidad on-line Aula de Policonecta
Modalidad

ONLINE

Curso

2018-2019

ECTS

8

Campus

Virtual

0 h

Presenciales

80 h

Online

Precio Colectivo Plazos
310 € Personal UPV  1 plazo
310 € Alumni UPV PLUS o AAA UPV  1 plazo
310 € Alumni UPV PLUS o AAA UPV  1 plazo
370 € Público en general  1 plazo
310 €  Desempleados y Profesores Primaria, ESO, Universidad (añadir al expediente documentación que lo justifique) 1 plazo
370€ Público en general
310€ Alumni UPV PLUS
310€ Alumni UPV PLUS
310€ Personal UPV
310€ Desempleados y Profesores Primaria, ESO, Universidad (añadir al expediente documentación que lo justifique)

Objetivos

Las buenas prácticas de desarrollo de software están cobrando una importancia creciente en la industria. Las pruebas de software, o testing, son un factor decisivo en el control de calidad de un desarrollo. El uso de patrones de software, ofrece al programador un abanico de soluciones para mejorar su productividad. Utilizar un patrón arquitectónico en el diseño de una aplicación, es una práctica que nos garantiza su correcto desarrollo. En el curso se explicarán los principios de desarrollo SOLID, se repasarán los patrones de diseño más utilizados en Android y se aprenderá de forma práctica a usar arquitecturas como MVP y CLEAN.
En una segunda parte de la asignatura, el alumno será capaz de desarrollar aplicaciones en Android que incluyan interfaces de usuario avanzados. Entre estos se incluyen: uso de Fragments, RecyclerView, Navigation Drawer, animaciones, creación de vistas personalizadas, widget de escritorio, hilos de ejecución, AsyncTask y SurfaceView.

Acción formativa dirigida a

Personas o empresas que quieran desarrollar aplicaciones en Android y que dispongan de conocimientos básicos sobre programación en Android.
Deberán poseer una titulación universitaria (en cualquier especialidad) o estar matriculado en el último curso, con menos de 30 créditos ECTS incluido PFC para terminar.


Profesores

  • Jorge Juan Barroso Carmona Profesional del sector
  • Miguel Garcia Pineda Profesional del sector
  • David Santamaria Alvarez Profesional del sector
  • Jordi Bataller Mascarell Profesor/a Titular de Universidad
  • Carlos David Llorens Alvarez E.Técnicos Superiores Laboratorio UPV
  • Jesús Tomás Gironés Profesor/a Titular de Universidad

Metodología didáctica y sistemas de evaluación

Para cada módulo se preparará un completo material con descripciones teóricas, tutoriales, prácticas, preguntas de repaso y PoliMedias.
El curso se estructura en unidades. Cada unidad comienza con una clase de introducción a través de PoliConecta. Luego, hay que realizar la lectura de los textos proporcionados en el libro o en pdf y el visionado del material audiovisual (PoliMedias). En cada unidad se proponen una serie de ejercicios paso a paso y prácticas, seguidas de preguntas de repaso. Todas las dudas podrán ser resueltas a través de los foros, correo electrónico o en el horario de tutorías que será establecido semanalmente a través de PoliConecta.
Transcurrido una semana se realiza una segunda clase de repaso. La unidad concluye con un examen tipo test.
Cada dos o tres unidades el alumno ha de entregar un proyecto Android, donde se implementen los aspectos más importantes de estas unidades. Se plantean unos objetivos mínimos que el alumno puede ampliar si desea obtener una calificación mayor.
Evaluación:
- 33% exámenes de los módulos
- 67% entrega de los proyectos desarrollados durante el curso

Temas a desarrollar

1. Diseño avanzado de interfaces de usuario
- Comprender el funcionamiento de los Fragments
- Uso avanzado de RecyclerView y CoordinationLayout
- Barra de acciones y Navigation Drawer, Widget de búsqueda
- Aprender a realizar animación de propiedades
2. Diseño personalizado de vistas
- Crear nuevas vistas modificando o combinando vistas existentes
- Crear una vista desde cero
- Aprender a integrar un widget de escritorio en nuestra aplicación
- Insertar un widget en una notificación
3. Hilos de ejecución
- Programación concurrenre en Android
- Aprender el uso de AsyncTask para crear nuevos hilos
- Crear y conectar servicios
- SurfaceView con animaciones
4. Testing
- Test unitario
- Test de instrumentación
- Text de IU con Expreso
- Realización de Katas de test
5. Kotlin
- Principales características y diferencias con Java
- Funciones: Lambdas, anónimas e inline
- Clases: de datos, selladas, enumeradas y extensiones
- Anko
- Tratamiento de null
- Buenas prácticas en Kotlin
6. Patrones y librerías de apoyo
- Descripción de los principales patrones de diseño
- Librerías de apoyo para framework
- Buenas prácticas de programación: SOLID y STUPID
7. Arquitecturas de sotfware
- Moledo Vista Controlador(MVC)
- Moledo Vista Presentador(MVP)
- Moledo Vista Vista-Modelo(MVVP)
- Arquitectura CLEAD