Desarrollo front-end avanzado Código:  M4.256    Créditos:  6
Consulta de los datos generales   Descripción   La asignatura en el conjunto del plan de estudios   Campos profesionales en que se proyecta   Conocimientos previos   Información previa a la matrícula   Objetivos y competencias   Contenidos   Consulta de los recursos de aprendizaje que dispone la asignatura   Recursos de aprendizaje y herramientas de apoyo   Bibliografía y fuentes de información   Metodología   Información sobre la evaluación en la UOC   Consulta del modelo de evaluación   Evaluación Contínua   Evaluación final   Feedback  
Este es el plan docente de la asignatura para el segundo semestre del curso 2023-2024. Podéis consultar si la asignatura se ofrece este semestre en el espacio del campus Más UOC / La universidad / Planes de estudios). Una vez empiece la docencia, tenéis que consultarlo en el aula. El plan docente puede estar sujeto a cambios.

La asignatura en la que nos encontramos, Desarrollo front-end avanzado, es una continuación de la asignatura Desarrollo front-end con frameworks JavaScript del Máster universitario de Desarrollo de Sitios y Aplicaciones Web.

Si bien en esta asignatura previa se trabajaron las bases del desarrollo a nivel de front-end con el framework Angular, trabajando conceptos como el lenguaje de programación TypeScript, el estándar de programación ECMAScript 6, y aspectos más propios del framework Angular como trabajar con formularios, servicios y rutas, en esta asignatura en la que nos encontramos, profundizaremos algunos de estos conceptos y presentaremos otros nuevos.

En una parte inicial, trabajaremos con los formularios reactivos, y de esta manera tendremos las herramientas necesarias para que el usuario pueda insertar datos en la aplicación y éste tenga una respuesta correcta. El objetivo será que la interacción del usuario con nuestra aplicación sea fluida y lo más fácil posible.

Posteriormente, en un segundo bloque bastante extenso, estudiaremos la programación reactiva e introduciremos un patrón de diseño muy interesante cuyo nombre es Redux que nos permitirá gestionar los datos de la aplicación de una manera eficiente y desde un punto de vista de estados. Si bien es un patrón de diseño que añade cierta complejidad a nuestra implementación y está más pensado para plataformas de cierta envergadura, nosotros aplicaremos este patrón a nuestra aplicación que iremos desarrollando durante el curso para establecer los conocimientos necesarios y entender su funcionamiento.

Finalmente, tendremos diversos bloques más concentrados donde trabajaremos desde temas de maquetación, testeo y despliegues, como temas de refactoring. También trabajaremos un concepto muy importante y presente actualmente, el cual es cómo transformar una aplicación web a una PWA (Progressive Web App). Profundizaremos esta tecnología en su momento.

A nivel general, podemos decir que esta asignatura contiene un temario bastante extenso y complejo pero una vez estudiado, nos permitirá tener un conocimiento completo de todo lo que implica el desarrollo de la parte de front-end, utilizando el framework Angular.

Debemos pensar que, a día de hoy, el mercado laboral tiene mucha demanda de desarrolladores tanto de front-end como de back-end, y en nuestro caso, dentro del desarrollo front-end el framework Angular tiene mucha demanda. Además, Angular al ser un framework muy completo, nos permite en un momento dado, si tuviéramos que utilizar algún otro framework como React o Vue, que el proceso de aprendizaje de estos otros frameworks fuera relativamente sencillo.

Amunt

En el máster de Desarrollo de sitios y aplicaciones Web, esta asignatura debe cursarse después de haber realizado la asignatura Desarrollo front-end con frameworks JavaScript, puesto que se trata de su continuación. Así pues, con Desarrollo front-end avanzado se culmina el itinerario iniciado con Programación en JavaScript para programadores y Desarrollo front-end con frameworks JavaScript.

Amunt

Esta asignatura forma a profesionales en el desarrollo web del lado cliente o front-end.

Amunt

Para hacer esta asignatura es imprescindible tener conocimientos de Angular y, más concretamente, haber superado la asignatura Desarrollo front-end con frameworks JavaScript.

Amunt

Es imprescindible haber superado la asignatura Desarrollo front-end con frameworks JavaScript.

Amunt

El objetivo principal de esta asignatura es dotar a los estudiantes de las competencias básicas necesarias para que puedan implementar el ciclo completo de un desarrollo de una web app con el framework Angular, desde el inicio hasta el final, es decir, desde el análisis, la implementación, las pruebas y el despliegue.

Esto implica que el estudiante alcanzará las siguientes capacidades:

  • Capacidad para implementar formularios reactivos que permitan una interacción fluida del usuario con la aplicación.
  • Capacidad para implementar y aplicar la programación reactiva.
  • Capacidad para dotar de un aspecto visual profesional nuestra aplicación web.
  • Capacidad para asegurar la calidad de las implementaciones mediante juegos de pruebas automatizados.
  • Capacidad para transformar una aplicación web a una PWA y dotarla de una imagen corporativa, que sea instalable tanto en escritorio como en dispositivo móvil y que funcione sin conexión a internet.
  • Conocer el concepto de Angular Universal, capacidad de aplicarlo y entender las implicaciones que tiene con SEO y con el rendimiento.
  • Capacidad para refactorizar una aplicación.
  • Entender como se generan los paquetes entregables de una aplicación Angular y como se puede desplegar en un entorno local para hacer pruebas.

De manera más transversal:

  • Capacidad de análisis de requerimientos e implementación en consecuencia.
  • Capacidad para implementar todo el ciclo de desarrollo de una aplicación web de la parte front-end des del análisis, la implementación, las pruebas y el despliegue.
  • Capacidad para buscar la solución más optima.
  • Capacidad para aplicar patrones de diseño correctos.
  • Visión más allá del propio requisito, pensar en tareas futuras para intentar implementar un código escalable, modulable y bien parametrizado.

Amunt

Esta asignatura se organiza en 8 temas bien diferenciados, a continuación, los enumeramos:

1. Programación Reactiva: Formularios reactivos
2. Programación Reactiva usando RxJS + Patrón Redux (NgRx)
3. Maquetación: Angular Material
4. Pruebas
5. Progressive Web Apps (PWA)
6. Angular Universal (SEO)
7.  Desplegando una aplicación frontend
8. Refactoring

Amunt

Todos los recursos necesarios para la correcta realización de esta asignatura estarán publicados dentro del enunciado de cada PECToda la documentación es propia y se va ampliando/mejorando cada semestre. La mayoría de los enunciados contendrán enlaces a recursos complementarios, p.ej. de la biblioteca O'Reilly. 

También vía los foros del aula intentaremos ir compartiendo recursos que nos parezcan interesantes como lecturas complementarias, com por ejemplo la explicación de algún patrón de diseño, alguna noticia de actualidad interessante relacionada con el temario, etc.

Amunt

Toda la bibliografía y las fuentes de información estarán detalladas en los propios enunciados de las diferentes prácticas de la asignatura.

Amunt

El hilo conductor de la asignatura son las 6 Pruebas de Evaluación Continua (PEC). Cada PEC tratará, como mínimo, uno de los temas indicados temario. Todas las PECs son eminentemente prácticas.

La dinámica de trabajo será:

  • Primero estudiar la teoría vinculada a la PEC, la cual encontrarás adjunta en formato PDF dentro de la cada actividad del aula. Normalmente la teoría tiene ejercicios guiados con un paso a paso para interiorizar el temario que corresponda, lo ideal seria sacarle provecho a la teoría antes de abordar la práctica.
  • Una vez estudiada la teoría, abordar la resolución de la PEC. Cada PEC tendrá un numero determinado de ejercicios. Cada ejercicio valdrá un porcentaje de la nota. En el enunciado de cada PEC lo podréis ver.
  • Ante cualquier duda o pregunta, se recomienda utilizar los foros (hay uno por PEC) antes que enviar un e-mail. Igualmente, te animamos a responder a los mensajes de tus compañeros/as de clase.

Estas 6 prácticas sirven para controlar, tanto por parte del profesor colaborador como por el mismo estudiante, el progreso en la asignatura.

La evaluación de estas 6 prácticas da como resultado la nota final de Evaluación Continua (EC) que a su vez se corresponde con la nota final de la asignatura.

Las PECs serán publicadas en el aula según las fechas previstas en el calendario (ver el apartado "Fechas clave" de este Plan Docente).

Amunt

La Normativa académica de la UOC dispone que el proceso de evaluación se fundamenta en el trabajo personal del estudiante y presupone la autenticidad de la autoría y la originalidad de los ejercicios realizados.

La falta de originalidad en la autoría o el mal uso de las condiciones en las que se hace la evaluación de la asignatura es una infracción que puede tener consecuencias académicas graves.

Se calificará al estudiante con un suspenso (D/0) si se detecta falta de originalidad en la autoría de alguna actividad evaluable (práctica, prueba de evaluación continua (PEC) o final (PEF), o la que se defina en el plan docente), ya sea porque ha utilizado material o dispositivos no autorizados, ya sea porque ha copiado de forma textual de internet, o ha copiado de apuntes, de materiales, manuales o artículos (sin la citación correspondiente) o de otro estudiante, o por cualquier otra conducta irregular.

La calificación de suspenso (D/0) en la evaluación continua (EC) puede conllevar la obligación de hacer el examen presencial para superar la asignatura (si hay examen y si superarlo es suficiente para superar la asignatura según indique este plan docente).

Cuando esta mala conducta se produzca durante la realización de las pruebas de evaluación finales presenciales, el estudiante puede ser expulsado del aula, y el examinador hará constar todos los elementos y la información relativos al caso.

Además, esta conducta puede dar lugar a la incoación de un procedimiento disciplinario y la aplicación, si procede, de la sanción que corresponda.

La UOC habilitará los mecanismos que considere oportunos para velar por la calidad de sus titulaciones y garantizar la excelencia y la calidad de su modelo educativo.

Amunt

La asignatura solo puede aprobarse con el seguimiento y la superación de la evaluación continua (EC). La calificación final de la asignatura es la nota obtenida en la EC.


Ponderación de las calificaciones

Opción para superar la asignatura: EC

Nota final de asignatura: EC

Amunt

La evaluación continua (EC) se compone de 6 Pruebas de Evaluación Continuada (PECs), que se realizarán a lo largo del semestre.

La nota final de EC (y de la asignatura) será la media ponderada de las 6 PECs, teniendo en cuenta que una PEC no entregada se contabilizará como una D = 0.

Para obtener una calificación final de EC hay que entregar, como mínimo, el 50% de las PECs. De lo contrario, la calificación del EC (y de la asignatura) será No Presentado (N).

Además, en la nota final de EC se valorará también la participación del estudiante al foro del aula.

Las fechas de publicación de enunciados y de entrega de las PEC las podéis encontrar en el apartado de 'Planificación' de este plan docente.

Es importante tener claro que el seguimiento correcto de la asignatura os compromete a realizar las actividades propuestas (PECs) de manera individual y según las indicaciones que pauta este Plan Docente. En caso de que no sea así, las actividades se evaluarán con una D (=0). En concreto, en caso de extrema similitud entre algún ejercicio de alguna PEC de dos o más estudiantes que desacredite el hecho de haberla realizado individualmente, la nota final de EC será un 0 para todos ellos.

Por otro lado, y siempre a criterio de los Estudios, el incumplimiento de este compromiso puede suponer que no se os permita superar ninguna otra asignatura mediante evaluación continuada ni en el semestre en curso ni en los siguientes.

La ponderación de las diferentes PECs es la siguiente:

Prueba de evaluación continua: PONDERACIÓN
1. Programación Reactiva: Forms 15%
2. Programación Reactiva usando RxJS + Patrón Redux (NgRx) 25%
3. Maquetación: Angular Material 15%
4. Pruebas 15%
5. Progressive Web Apps (PWA), Angular Universal (SEO), Desplegando una aplicación frontend 15%
6. Refactoring: Entrega final 15%

Amunt

Como podéis ver en el apartado anterior, cada práctica tiene un porcentaje de la nota final.

La nota final de la asignatura se calculará aplicando dichos porcentajes:

Nota final =(PEC1*0,15)+(PEC2*0,25)+(PEC3*0,15)+(PEC4*0,15)+(PEC5*0,15)+(PEC6*0,15)

Se reserva un pequeño margen para valorar la participación en el foro, la ayuda a otr@s compañer@s, aportación de noticias/ideas, ...

Amunt

Para cada una de las actividades de evaluación del curso (PECs), el profesorado docente colaborador dará un feedback personalizado a cada estudiante. Tanto la nota como el feedback serán proporcionados a través del Registro de Evaluación Continua (REC) del aula.

Para cada PEC, además de la nota, recibiréis un Excel adjunto. En este Excel tendréis un comentario de cada ejercicio explicando brevemente el porqué de la nota.

La correspondencia número - letra sería:

[8,5 - 10] A
[7 - 8,4] B
[5 - 6,9] C+
[3 - 4,9] C-
[0 - 2,9] D
No presentado N

Amunt