Curso Escuela FrontEnd

285 horas

Presencial / Virtual Class

Precio asistente: consultar

Precio de grupo: consultar

Requisitos: Conocimientos iniciales de Informática.

Dirigido a: Alumnos que tengan la necesidad de conocer las últimas tecnologías en la parte de Front End

 

 

Objetivos:

  • Entender la estructura completa (full-stack) de una aplicación con tecnologías web.
  • Analizar las ventajas e inconvenientes de todas las tecnologías disponibles y elegir la más adecuada en un proyecto.
  • Conocer los lenguajes de descripción de la interfaz de usuario en la plataforma web.
  • Adquirir un alto nivel de programación en JavaScript actual.
  • Instalar, configurar y gestionar servidores y bases de datos.
  • Utilizar frameworks modernos de desarrollo web en el cliente.
  • Introducción al despliegue y referencias.

Programación Java(30h)

  1. Introducción a Java
    • La Máquina Virtual Java
    • Estructura general de un programa Java, compilación y ejecución
  2. Tipos de datos, palabras reservadas y estructuras de control de flujo
    • Tipos primitivos
    • Tipos referencia
    • Operadores
    • Flujos de control: if, switch
    • Bucles: while, for, …
  3. Estructuras de almacenamiento
    • Arrays
    • Estructuras polimórficas
    • Arrays multidimensionales
  4. Clases
    • Conceptos de herencia, polimorfismo, sobrecarga
    • Creación de clases
    • Constructores
  5. Manejo de Excepciones y creación de excepciones de usuario
  6. Características avanzadas de clases
    • Paquetes
    • Clases abstractas
    • Interfaces
    • Clases parametrizadas
  7. Cadenas
    • StringBuilder y StringBuffer
    • Métodos String
    • Formato de texto
    • Expresiones regulares con Pattern y Matcher
  8. Documentación de proyectos
  9. Colecciones
    • API de colecciones
    • Map
    • Comparable y Comparator interfaces
    • Iterar colecciones
  10. Construcción básica de interfaces gráficos de usuario
    • Introducción a Swing
    • Componentes
    • Contenedores
    • Gestores de esquema
    • Gestión de eventos
  11. Entrada/Salida estándar
  12. Entrada/Salida con NIO 2
    • Interfaz Path
    • Clase Files
    • Directory y File
    • Operaciones sobre el sistema de archivos
    • Observación de los cambios en el sistema de archivos
  13. Programación concurrente (Threads)
    • Concepto de Thread
    • Creación de threads. MultiThreading
    • Control de threads
    • Sincronización
    • wait / notify
  14. Programación en red TCP/IP
    • Desarrollo de aplicaciones para red
    • Uso de las clases ServerSockets y Sockets
  15. Desarrollo de un ejemplo práctico completo

 Desarrollo de Aplicaciones Java EE(25h)

  1. Arquitectura de aplicaciones Java EE
    • Arquitectura N-Capas
    • Modelo o Dominio
    • Patrones: MVC y DAO
  2. Herramientas de desarrollo disponibles
  3. Programación de componentes Web
    • Características de desarrollo para entornos WEB
    • Servlets
  4. Características de los Servlets
  5. Anotaciones y descriptores
  6. Otras características
    • JSP
  7. Introducción a las Java Server Pages
  8. Como funcionan para la presentación
  9. JSTL, EL
  10. Oyentes y filtos
  11. Validación de Beans
  12. Context and Dependency Injection API (CDI)
  13. JSF
    • Introducción al modelo Java Server Faces
    • Uso de librerías JSF
    • JSF Managed Beans
  14. Enterprise Java Beans
  15. Tipos de EJBs
  16. EJB lite
  17. Persistencia de Objetos con JPA
    • Mapeos y Anotaciones
    • Ciclo de vida de la persistencia
    • Consultas con JPAQL
  18. Modelo Web Services
    • Características de los Web Services
    • JAXB, JSON-P y JSON-B
    • Desarrollo de Web Services en Java con JAX-WS
    • Desarrollo de Web Services en Java con JAX-RS
  19. Clientes Java EE
  20. Modelo de seguridad Java EE
    • Seguridad capa web
    • Seguridad capa negocio
    • Java EE Security API

Introducción  a FrontEnd (40h)

  1. POO, PROGRAMACIÓN FUNCIONAL Y PATRONES
    • Repaso de fundamentos de programación. Programacióndeclarativa vs imperativa. Programación orientada a objetos, funcional, estructurada, orientada a eventos ; ventajas y aplicaciones de cada una.
    • Cohesión y acoplamiento
  2. Principios SOLID y su importancia en el desarrollo del software
  3. Patrones de diseño: creacionales, estructurales y de comportamiento: bases y ejemplos
  4. FUNDAMENTOS DEL TESTING
    • Objetivo de los test y la importancia de los test unitarios para refactorizar código en producción
    • Cobertura de test vs calidad de test
    • Test driven development
    • Testing best practices: Given When Then (GWT) y Arrange Act Assert (AAA)
  5. GIT
    • Introducción a GIT
    • Estrategias de trabajo con GIT: trunk-based, GitFlow.
    • Como hacer un merge: teoría y ejemplos
    • Combinar commits con squash, borrar ramas tras merge, modificar mensaje de commit.
    • Operaciones avanzadas (rebase, cherry pick, rollback de un commit, de varios, de una rama…)

Desarrollo Web (40 horas).

  1. Introducción.
    • Qué son. Ventajas e inconvenientes (SSR vs CSR)
    • Microservicios. Arquitectura Hexagonal
    • Desarrollo web, híbrido, PWA, nativo. Ventajas/Inconvenientes de cada uno
    • Entorno de trabajo. VSC, Lintters, Formatters, Local Server, Depuración
    • HTML5, CSS3. Es importante cubrir grid y flex layouts, media querys y accesibilidad
    • SASS y BEM

JavaScript  y TypeScript ( 40 horas).

  1. Trabajando con Javascript
    • Introducción a Javascript.
    • Javascript orientado a objetos.
    • Programación asíncrona y Promises.
    • Organizando código en Javascript.
  2. Trabajando con Typescript
    • Introducción a Typescript.
    • Conceptos básicos
    • Interfaces, clases y herencia.
    • Decoradores y genéricos.
    • Programación asíncrona y Promises.
    • Modularización.
  3. Buenas prácticas y clean code.

Angular 12 (80 horas).

  1. INTRODUCCIÓN E INSTALACIÓN
    • Estructura de un proyecto en angular, módulos y componentes
    • Angular Cli
    • Servidor Integrado
  2. CONCEPTOS ESENCIALES
    • Data binding
    • Pipes
    • Pipes personalizados
  3. INTERACCIÓN ENTRE COMPONENTES
    • Paso de parámetros entre componentes
  4. SERVICIOS
    • Anatomía de un servicio
    • Creación de servicios con Cli
    • Inyección de dependencias
    • Peticiones HTTPClient
    • JSON y Servicios Rest
  5. ENRUTAMIENTO
    • Instalación y configuración
    • Outlet, Links, State, Events
    • ParamMap
  6. FORMULARIOS
    • Forms Module
    • Bindings
    • Validaciones
    • Mensajes de error.
  7. OBSERVABLES
    • Introducción a la programación reactiva
    • RxJS
    • Observables, Observers, operadores reactivos
  8. SEGURIDAD
    • Guards
  9. FORMULARIOS REACTIVOS
    • ReactiveFormsModule
    • Bindings
    • Validaciones
    • Mensajes de error
  10. TESTING EN ANGULAR
  11. MULTIIDIOMA, CONFIGURACIÓN, etc.

 Despliegue y Referencias (20 horas).

  1. DESPLIEGUE
    • Infraestructura OnPremisse vs Cloud
    • Docker y Kubernetes:
    • Introducción a Docker.
    • Gestión de imágenes y contenedores.
    • Introducción a Docker Compose.
    • Trabajando con Kubernetes.
    • CI/CD

 Fundamentos Cloud (10 horas).

  1. Un cambio de enfoque
    • Qué es Cloud Computing
    • Diferentes tipos de Cloud Computing
    • Modelos básicos en la nube
  2. Componentes de la nube
    • Hardware Cloud
    • Virtualización
    • Cloud storage
    • Grid Computing
    • Computing transaccional
    • Software Cloud
    • SaaS
    • Disponibilidad On-Demand
    • Pago por uso
    • SOA y la nube
  3. Modelos de Nubes
    • PaaS
    • IaaS
    • XaaS
    • Nubes privadas
    • Nubes públicas
    • Nubes híbridas
  4. Seguridad, Auditoria y Cumplimiento en la Nube
    • Puntos claves
    • La seguridad en la nube
    • Gest ión de identidades
    • Disaster Recovery
    • Escalar una infraestructura en la nube
    • SLAs en la nube
    • Aspectos legales
    • Estándares nebulosos
  5. Plataformas varias
    • Algunas ideas SaaS
    • Principales propuestas de IaaS
    • Ideas PaaS
    • Casos prácticos
  6. Ofertas actuales
    • Amazaon AWS
    • Azure
    • Google Cloud
    • Oracle Cloud
  7. Desplegar un contenedor en la nube, como ejemplo al Cloud

Descarga este curso:

Catálogo 2023

Conoce nuestra oferta formativa para este año:

Solicítanos más información y/o como subvencionarte este curso con el siguiente formulario:

Curso: Escuela FrontEnd

Política de privacidad:

Comunicaciones:

8 + 4 =