Curso de Fundamentos de Spring Framework para Java.
Comprende la base del funcionamiento del núcleo de Spring y Proxy Dinámico, y realizar una programación orientada a ASPECTOS.
Modalidad: A Distancia
Duración: 6 semanas.
Desde sus inicios Spring se ha convertido en un estándar de facto para construir aplicaciones empresariales en Java y actualmente es uno de los frameworks más maduros de la industria.
Spring emplea varios módulos, siendo el principal el conocido Contenedor de inversión de control (IoC), una técnica mediante la cual se trabajan mejor las integraciones entre clases.
Este entrenamiento tiene como valor proveer a profesionales y estudiantes que se desarrollan en el mercado de tecnología informática, y particularmente en el área de programación, los conocimientos y skills adecuados sobre el núcleo del marco de trabajo Spring. Explica las bases de su programación utilizando tanto XML como anotaciones.
La capacitación finaliza formando al participante en el acceso distribuido usando el marco de trabajo con la tecnología RMI de Java desde dentro de Spring (una forma más simple y directa que permite entender a detalle al framework).
Este paso resulta fundamental para la correcta comprensión de la forma en la cual el framework Spring interacciona con tecnologías distribuidas y sienta las bases para comprender el uso de Spring desde dentro de servidores contenedores como Tomcat, JBoss y otros.
Objetivo general:
Que los participantes logren desarrollar aplicaciones que utilizan el núcleo del marco de trabajo (framework) Spring, aprendiendo programación orientada a ASPECTOS (tecnologías de Java desde Spring, JUnit hasta Mockito y RMI)
Objetivos específicos:
Que los participantes logren:
Comprender la base del funcionamiento del núcleo de Spring desde simples programas en Java aún sin emplear directamente el framework.
Comprender el concepto de proxy dinámico y utilizarlo para la programación orientada a aspectos
Utilizar el framework como contenedor principal para comprender bien a detalle su funcionamiento (no empleando otro contenedor, por ejemplo, Tomcat)
Gestionar el contexto de Spring
Gestionar la declaración y creación de Beans tanto con XML como con anotaciones
Utilizar JUnit y Mockito con Spring para la generación de unidades de prueba
Administrar el acceso a base de datos en Spring con JDBC
Crear aplicaciones cliente servidor con RMI para Spring
Crear Beans con XML y anotaciones.
Destinatarios:
Programadores con conocimientos del lenguaje Java que quieran aprender los fundamentos de la programación con Spring.
Temario:
Unidad I: Introducción al núcleo de Spring.
- Conceptos fundacionales
- Inyección de dependencias e inversión del control
- El patrón de diseño Factory (Fábrica)
- Usando XML para definir componentes
- Exploración de los módulos principales de Spring
- Desacoplamiento de objetos de una aplicación
- Significado de preocupaciones u ocupaciones transversales (cross-cutting concerns) en la programación orientada a aspectos
- El contenedor de Spring
- Práctica y Ejecitación
Unidad II: Beans y Spring Expression Language.
- Declaración de Beans
- La inyección en constructores y setters
- Conexión de Beans
- El control de la creación y la destrucción de Beans
- Práctica y Ejercitación
- SpEL (Spring Expression Language)
- Conexionado con expresiones
- Fundamentos de las expresiones SpEL
- Usando SpEL declarativamente en el archivo de contexto de Spring
- Moviéndose a través de colecciones en SpEL
- Usando SpEL en tiempo de ejecución
- Inconvenientes de SpEL
- Práctica y Ejercitación
Unidad III: XML y JUnit.
- Conexionado automático de Beans
- Detección automática de Beans
- Conexionado del Bean orientado a las anotaciones
- Configuración de Spring basada en Java
- Práctica y Ejercitación
- Conceptos de testeo unitario
- Trabajando con JUnit
- Trabajando con Mockito
- Explorando Mockito
- Práctica y Ejercitación
Unidad IV: Beans y Aspectos, Introducción.
- Anotación de Beans para la detección automática
- Filtrado en la exploración de componentes
- Especificando la configuración basada en Java
- Definición de una clase de configuración
- Inyectar con configuración basada en Java de Spring
- Práctica y Ejecitación
- ¿Qué es la programación orientada a aspectos?
- Selección de puntos de unión mediante puntos de corte
- Declaración de los aspectos en XML
Unidad V: Aspectos con Anotaciones y RMI con Spring.
- Anotaciones para aspectos
- Declaraciones de puntos de corte en una clase dedicada
- Intercepción de parámetros
- Introducciones
- Práctica y Ejecitación
- Exportadores e invocadores de servicio
- Servidor
- Cliente
- Práctica y Ejecitación
Unidad VI: Cierre.
- Repaso General
- Examen Final
Requisitos previos:
Contar con experiencia concreta en programación de aplicaciones en lenguaje Java o haber completado la Diplomatura de programación en Java.
Metodología de enseñanza-aprendizaje:
La modalidad es totalmente mediada por tecnologías a través del Campus Virtual FRBA. Las actividades que se realizarán serán:
Foros de discusión semanal propuestos por el docente (un foro por unidad).
Consulta al docente a través de e-mail o chat.
Material de lectura semanal y por unidad temática.
Actividades individuales y/o grupales de aplicación práctica semanal y por unidad temática.
Evaluaciones semanales y por unidad temática sobre la base de trabajos prácticos de aplicación de los conocimientos adquiridos.
Se trata de una modalidad básicamente asincrónica con el complemento del AVS, que supera la instancia de autoestudio por la implementación de foros proactivos coordinados por el profesor-tutor y dictado de clases en tiempo real. Los foros cumplen cuatro funciones pedagógico-didácticas fundamentales:
1) Son el lugar para la presentación de las dudas, consultas y opiniones críticas de los alumnos;
2) Son el principal espacio para la generación de retroalimentación (feed back) entre profesores-tutores y alumnos y alumnos entre sí;
3) Es el lugar específico para la discusión, coordinada por el profesor-tutor, de todos los temas tratados en los módulos de la especialidad o curso y
4) Es el lugar para el aprendizaje entre pares de los alumnos. A su vez, el AVS permite complementar todas aquellas instancias pedagógico-didácticas que le señalan límites a la modalidad puramente asincrónica.
Modalidad de evaluación y acreditación:
La evaluación del curso consiste en una serie de trabajos prácticos que pondrán a prueba el conocimiento adquirido en cada unidad. Estos podrán ser del tipo informe monográfico o ejercicio práctico.
Al final del curso se realizará una instancia de evaluación integradora con modalidad de trabajo práctico.
Tratándose de una modalidad mediada por tecnologías, la participación activa en los foros por parte de los alumnos, será una condición necesaria para su aprobación.
Duración:
6 semanas
Carga horaria:
48 hs.
Certificación:
A todos los participantes que hayan aprobado el curso cumpliendo con todos los requisitos establecidos, se les extenderá un certificado de la Secretaría de Cultura y Extensión Universitaria, FRBA, UTN. Aquellos que aún habiendo participado activamente en los foros y realizado las actividades prácticas no cumplimentaran los requisitos de evaluación, recibirán un certificado de participación en el curso.