Download TDD CON JAVA EE E INTEGRACIÓN CONTINUA 1. Denominación

Document related concepts
no text concepts found
Transcript
TDD CON JAVA EE E INTEGRACIÓN CONTINUA
1. Denominación del curso
 TDD CON JAVA EE E INTEGRACIÓN CONTINUA
2. Objetivos
 Aprender las características fundamentales del lenguaje Java SE 8 y Java EE 7
 Describir y conocer las construcciones y elementos de la sintaxis del lenguaje:
variables, bucles, estructuras condicionales, etc.
 Conocer y utilizar las API proporcionadas por Java para la creación de estructuras y
colecciones, tratamiento de excepciones, concurrencia, funcionalidades de
entrada/salida, etc.
 Utilización y control de bases de datos mediante acceso JDBC
 Crear aplicaciones que residan en un servidor Web, y respondan a las peticiones
enviadas por el cliente.
 Creación de páginas web empleando patrón MVC, servlets y JSP
 Utilización de frameworks como Hibernate, Spring o Struts
3. Requisito de acceso de los alumnos
 Nivel académico:
o Titulados/as universitarios/as (Licenciatura o Diplomatura) de grados de
Tecnologías de la Información y de las Comunicaciones.
o Formación profesional (FP) en Admón. Sistemas Informáticos o Desarrollo de
aplicaciones informáticas
 Deseable formación específica en el área del curso o experiencia profesional
acreditada.
4. Módulos formativos y sus Unidades Didácticas
PROGRAMACIÓN EN JAVA SE 8
 Fundamentos
o Interacción del Código
o Ejecución Runtime
o Pasos de Argumentos: referencia o valor
o Garbage Collector
o Classpath y estructura JAR
o Operadores y Asignaciones
 Declaraciones, inicialización y ámbito
o Declaración Clases, Interfaces y Packages
o Abstract, Extends e Implementation
o Inicialización Clases, tipos primitivos, arrays y enums
o Constructores
o Overriding y Overloading
 Control de flujo
o Sentencias Selección
o Bucles
o Assertions
o Exceptions
 Conceptos Orientación a Objetos
o Encapsulación, Coupling y Cohesión
o Polimorfismo
o Modificadores
o Relaciones
 Contenido del API
o Wrappers Tipos Primitivos
o I/O y Streams
o Clases e Interfaces Collections
o hasCode y equals
o Generic Collections
o Clases y métodos Generics
o Package java.util
 Concurrencia
o Threads y Runnables
o Estados
o Bloqueos y Seguridad
Duración: 30 h
TDD E INTEGRACIÓN CONTINUA
 Introducción y principios Agiles
o Las metodologías ágiles
o Prácticas esenciales en XP
o Test Driven Development
 Gestión de Proyectos con Maven
o Estructura de un proyecto
o Arquetipos (plantillas de proyectos)
o Tipos de proyecto: Java, Web
o Compilado, test y empaquetado
o El fichero POM (Project Object Model)
o El ciclo de vida del proyecto
o Repositorios de Maven
o Gestión de dependencias
o Jerarquía entre proyectos
o Generando informes y documentación
o Gestión de repositorios
 Testing con Maven
o Pruebas Unitarias y de Integración
o Junit, DBUnit y HttpUnit
o Mocks
o Cobertura
o Pruebas Funcionales: Selenium
o Pruebas Aceptación: Concordion
o Pruebas de Regresión
 Uso de SVN/GIT para el control de versiones
o Uso de control de versiones y cambios
o Checkout inicial de un repositorio
o update->change->review->commit
o Revisiones e historia de documentos
o Tagging/Branching/Merge
o Desarrollo paralelo
 Gestión de Proyectos e incidencias
o Bugzilla/Jira
o Eclipse Mylym
 Integración Continua con Jenkins
o Administración de Jenkins
o Construcción de un proyecto SW
o Construcción de un proyecto maven2
o Construcción de una de matriz proyectos
o Trabajos de supervisión
o Construcción Distribuida
o Usando los plugins de Jenkins
o Interfaz de línea de comandos
o API de acceso remoto
o División de una tarea en trabajos
 Métricas de proyectos son Sonar
o
Configurar un proyecto
o
Reglas y estándares de codificación
o
Herramientas de Análisis de código: Checkstyle, PMD, Findbugs, Clover, etc
o
Métricas de la ingeniera del software
o
Control de tests
o
Evolución temporal de un proyecto
o
Visión del código
o
Plugins
Duración: 20 h
DESARROLLO DE COMPONENTES WEB EN JAVA EE 7
 La tecnología Servlet
o Métodos HTTP
o InterfaceHttpServletRequest
o Interface HttpServletResponse
o Ciclo Vida
 Estructura y despliegue de aplicaciones WEB
o Estructura de Directorios y Archivos de una Aplicación Web
o Descriptor Despliegue
o Archivos WAR
 El contenedor WEB
o ServletContext
o Ámbitos de los Atributos
o Modelo Procesamiento de las Peticiones
o Ciclo de Vida de los Eventos
o RequestDispatcher
 Sesiones
o HttpSession
o Sessions Listeners
o Diferentes Métodos Guardar Información
 Seguridad
o Fundamentos de Seguridad
o Seguridad en el Descriptor de Despliegue
o Tipos de Autenticación
 La tecnología Java Server Pages
o JSP
o Ciclo de Vida
o Objetos Implícitos
o Configuración
 Expression Language (EL)
o Acceso Variables Implícitas
o Operadores
 JSP Tag Libraries
o Directivas
o JSTL
Duración: 25 h
SPRING FRAMEWORK
 Introducción al framework
 Principio de Inversión de control (IoC)
 Spring Expression Language (SpEL)
 Programación orientada a aspectos (AOP)
 Uso de Spring para acceso a Bases de Datos
 Control de Transacciones en Spring
 Uso de Spring en la capa Web
 Control de la seguridad con Spring Security
 Gestión de recursos con Spring
 Desarrollo de pruebas con Spring
 Programación de tareas
 Conversión y Validación
 Acceso a servicios remotos con Spring
 Creación y acceso a Servicios Web
 Otras integraciones de servicios
Duración: 25 h
HIBERNATE / JPA
 Introducción a la gestión de persistencia en JEE
 Clases del modelo de dominio en un diseño orientado a objetos.
 Mapping de clases del modelo de dominio a una base de datos relacional.
 Operaciones de acceso a datos con Hibernate.
 Lenguaje HQL.
 Caché y Estrategias de Recuperación.
 Hibernate y JPA.
 Técnicas de diseño y buenas prácticas con Hibernate.
 Integración de Spring con Hibernate
Duración: 25 h
Spring MVC
 Instalación y configuración
o Configuración y cargadores del ApplicationContext
o Gestionando los mapeos
o Resolución de las vistas
 Controladores basados en anotaciones
o Estereotipos de anotaciones
o Configuración vía anotaciones
o Componentes anotados
o Controladores
o Mapeos
o Validación
o Parámetros de los métodos de una petición
o Tipos devueltos por el controlador
o Servicios Web Rest
 Las Vistas
o La librería de etiquetas para formularios
o Vinculo de datos del formulario
o Externalización de mensajes
o Mensajes de error
o Gestión de recursos, idiomas y temas
Duración: 25 h
Proyecto
 Desarrollo integral de una aplicación Java EE con Spring. Hibernate/JPA y Spring MVC
integrado por distintas etapas según se va desarrollando el temario.
TDD CON JAVA EE E INTEGRACIÓN CONTINUA
5. Denominación del curso
 TDD CON JAVA EE E INTEGRACIÓN CONTINUA
6. Objetivos
 Aprender las características fundamentales del lenguaje Java SE 8 y Java EE 7
 Describir y conocer las construcciones y elementos de la sintaxis del lenguaje:
variables, bucles, estructuras condicionales, etc.
 Conocer y utilizar las API proporcionadas por Java para la creación de estructuras y
colecciones, tratamiento de excepciones, concurrencia, funcionalidades de
entrada/salida, etc.
 Utilización y control de bases de datos mediante acceso JDBC
 Crear aplicaciones que residan en un servidor Web, y respondan a las peticiones
enviadas por el cliente.
 Creación de páginas web empleando patrón MVC, servlets y JSP
 Utilización de frameworks como Hibernate, Spring o Struts
7. Requisito de acceso de los alumnos
 Nivel académico:
o Titulados/as universitarios/as (Licenciatura o Diplomatura) de grados de
Tecnologías de la Información y de las Comunicaciones.
o Formación profesional (FP) en Admón. Sistemas Informáticos o Desarrollo de
aplicaciones informáticas
 Deseable formación específica en el área del curso o experiencia profesional
acreditada.
8. Módulos formativos y sus Unidades Didácticas
PROGRAMACIÓN EN JAVA SE 8
 Fundamentos
o Interacción del Código
o Ejecución Runtime
o Pasos de Argumentos: referencia o valor
o Garbage Collector
o Classpath y estructura JAR
o Operadores y Asignaciones
 Declaraciones, inicialización y ámbito
o Declaración Clases, Interfaces y Packages
o Abstract, Extends e Implementation
o Inicialización Clases, tipos primitivos, arrays y enums
o Constructores
o Overriding y Overloading
 Control de flujo
o Sentencias Selección
o Bucles
o Assertions
o Exceptions
 Conceptos Orientación a Objetos
o Encapsulación, Coupling y Cohesión
o Polimorfismo
o Modificadores
o Relaciones
 Contenido del API
o Wrappers Tipos Primitivos
o I/O y Streams
o Clases e Interfaces Collections
o hasCode y equals
o Generic Collections
o Clases y métodos Generics
o Package java.util
 Concurrencia
o Threads y Runnables
o Estados
o Bloqueos y Seguridad
Duración: 30 h
TDD E INTEGRACIÓN CONTINUA
 Introducción y principios Agiles
o Las metodologías ágiles
o Prácticas esenciales en XP
o Test Driven Development
 Gestión de Proyectos con Maven
o Estructura de un proyecto
o Arquetipos (plantillas de proyectos)
o Tipos de proyecto: Java, Web
o Compilado, test y empaquetado
o El fichero POM (Project Object Model)
o El ciclo de vida del proyecto
o Repositorios de Maven
o Gestión de dependencias
o Jerarquía entre proyectos
o Generando informes y documentación
o Gestión de repositorios
 Testing con Maven
o Pruebas Unitarias y de Integración
o Junit, DBUnit y HttpUnit
o Mocks
o Cobertura
o Pruebas Funcionales: Selenium
o Pruebas Aceptación: Concordion
o Pruebas de Regresión
 Uso de SVN/GIT para el control de versiones
o Uso de control de versiones y cambios
o Checkout inicial de un repositorio
o update->change->review->commit
o Revisiones e historia de documentos
o Tagging/Branching/Merge
o Desarrollo paralelo
 Gestión de Proyectos e incidencias
o Bugzilla/Jira
o Eclipse Mylym
 Integración Continua con Jenkins
o Administración de Jenkins
o Construcción de un proyecto SW
o Construcción de un proyecto maven2
o Construcción de una de matriz proyectos
o Trabajos de supervisión
o Construcción Distribuida
o Usando los plugins de Jenkins
o Interfaz de línea de comandos
o API de acceso remoto
o División de una tarea en trabajos
 Métricas de proyectos son Sonar
o
Configurar un proyecto
o
Reglas y estándares de codificación
o
Herramientas de Análisis de código: Checkstyle, PMD, Findbugs, Clover, etc
o
Métricas de la ingeniera del software
o
Control de tests
o
Evolución temporal de un proyecto
o
Visión del código
o
Plugins
Duración: 20 h
DESARROLLO DE COMPONENTES WEB EN JAVA EE 7
 La tecnología Servlet
o Métodos HTTP
o InterfaceHttpServletRequest
o Interface HttpServletResponse
o Ciclo Vida
 Estructura y despliegue de aplicaciones WEB
o Estructura de Directorios y Archivos de una Aplicación Web
o Descriptor Despliegue
o Archivos WAR
 El contenedor WEB
o ServletContext
o Ámbitos de los Atributos
o Modelo Procesamiento de las Peticiones
o Ciclo de Vida de los Eventos
o RequestDispatcher
 Sesiones
o HttpSession
o Sessions Listeners
o Diferentes Métodos Guardar Información
 Seguridad
o Fundamentos de Seguridad
o Seguridad en el Descriptor de Despliegue
o Tipos de Autenticación
 La tecnología Java Server Pages
o JSP
o Ciclo de Vida
o Objetos Implícitos
o Configuración
 Expression Language (EL)
o Acceso Variables Implícitas
o Operadores
 JSP Tag Libraries
o Directivas
o JSTL
Duración: 25 h
SPRING FRAMEWORK
 Introducción al framework
 Principio de Inversión de control (IoC)
 Spring Expression Language (SpEL)
 Programación orientada a aspectos (AOP)
 Uso de Spring para acceso a Bases de Datos
 Control de Transacciones en Spring
 Uso de Spring en la capa Web
 Control de la seguridad con Spring Security
 Gestión de recursos con Spring
 Desarrollo de pruebas con Spring
 Programación de tareas
 Conversión y Validación
 Acceso a servicios remotos con Spring
 Creación y acceso a Servicios Web
 Otras integraciones de servicios
Duración: 25 h
HIBERNATE / JPA
 Introducción a la gestión de persistencia en JEE
 Clases del modelo de dominio en un diseño orientado a objetos.
 Mapping de clases del modelo de dominio a una base de datos relacional.
 Operaciones de acceso a datos con Hibernate.
 Lenguaje HQL.
 Caché y Estrategias de Recuperación.
 Hibernate y JPA.
 Técnicas de diseño y buenas prácticas con Hibernate.
 Integración de Spring con Hibernate
Duración: 25 h
Spring MVC
 Instalación y configuración
o Configuración y cargadores del ApplicationContext
o Gestionando los mapeos
o Resolución de las vistas
 Controladores basados en anotaciones
o Estereotipos de anotaciones
o Configuración vía anotaciones
o Componentes anotados
o Controladores
o Mapeos
o Validación
o Parámetros de los métodos de una petición
o Tipos devueltos por el controlador
o Servicios Web Rest
 Las Vistas
o La librería de etiquetas para formularios
o Vinculo de datos del formulario
o Externalización de mensajes
o Mensajes de error
o Gestión de recursos, idiomas y temas
Duración: 25 h
Proyecto
 Desarrollo integral de una aplicación Java EE con Spring. Hibernate/JPA y Spring MVC
integrado por distintas etapas según se va desarrollando el temario.