Profesor | Jesús Iván Saavedra Martínez | lu mi vi | 8 a 9 | Taller de Computación Visual e Innovación Tecnológica |
Ayudante | Carlos López Rodríguez | ma ju | 8 a 9 | Taller de Computación Visual e Innovación Tecnológica |
Ayud. Lab. | Adriana Hérnandez Gasca | lu | 12 a 14 | Taller de Ingeniería de Software |
Introducción
El desarrollo de una aplicación web puede dividirse en la programación del frontend y del backend. El frontend es la parte visual, la interfaz que se encuentra del lado del cliente. En cambio, el backend es la parte que no vemos, que se encuentra del lado del servidor y procesa la información que recibe del cliente.
Un desarrollador de frontend es el encargado de implementar la parte visual de la aplicación y en muchas ocasiones diseña la estructura, tipografía, colorimetría, las imágenes, banners, etc. Su labor es realmente importante para que una aplicación sea realmente útil y funcional para el usuario.
Para desarrollar el frontend, además de manejar a la perfección HTML y CSS, un programador debe tener sólidos conocimientos sobre teorías de diseño, composición, criterios ergonómicos, etc. para que así la distribución que realice sobre los elementos visuales sean eficaces.
Aprendizajes esperados
Este curso intenta cubrir los aspectos más importantes del desarrollo web frontend. Al finalizarlo, el alumno será capaz de desarrollar aplicaciones web del lado del cliente con algunas de las tecnologías más utilizadas hoy en día. Adicionalmente, el alumno aprenderá buenas prácticas de programación para aplicar en su vida académica y profesional.
Principales herramientas y tecnologías utilizadas durante el curso
Angular - Bootstrap - Cors - CSS - Git - HTML5 - JavaScript - JQuery - TypeScript
Criterios de evaluación
- 50% Prácticas
- 50% Proyecto
- 10% Extra - Participación en clase
Acceso a plataformas
- Classroom: https://classroom.google.com/c/NjE2NjgwNjk5MTM3?cjc=6ryrip2
- Slack: https://join.slack.com/t/dwf2024-1/shared_invite/zt-1zya31ypu-xZFvlgiOLW172nk7BUd~LA
- Git: https://bitbucket.org/ivan_saavedra/workspace/projects/DWF20241
Temario
Unidad I. Fundamentos de desarrollo web
1.1. Introducción al desarrollo de aplicaciones web
1.2. Principios del desarrollo web frontend
1.3. Conceptos básicos del desarrollo web frontend
1.4. Evaluación de interfaces de usuario
Unidad II. Tecnologías de desarrollo web frontend
2.1. Lenguajes HTML y CSS
2.2. Lenguajes de programación JavaScript y TypeScript
2.3. Librerías de desarrollo web frontend (jQuery)
2.4. Frameworks de desarrollo web frontend (Angular)
Unidad III. Implementación de Interfaces Gráficas de Usuario
3.1. Desarrollo de componentes, servicios y modelos
3.2. Uso de directivas
3.3. Routers e interceptores
3.4. Observables y programación reactiva
Unidad IV. Consumo de Web Services
4.1. Introducción a los Web Services
4.2. Principios de la arquitectura REST
4.3. Protocolo HTTP
4.4. Conexión con una API REST
Unidad V. Seguridad en las aplicaciones web
5.1. Seguridad con Json Web Token
5.2. Restricción de acceso con servicios Guard
5.3. Vulnerabilidades de OWASP
5.4. Seguridad en servidores Linux