Desarrollador Experto en
Aplicaciones Empresariales con
Java EE
Desarrollador Experto en
Aplicaciones Empresariales con
Java EE
2
E
ste programa ha sido diseñado a partir de los Itinerarios de Certificaciones re-comendados por ORACLE para facilitar la adquisición de los conocimientos y habilidades necesarios para convertir al participante en uno de los profesionales más demandados por el mercado actual, ‘Desarrollador Experto en Desarrollo de Apli-caciones Empresariales con la tecnología Java SE y Java EE’ y preparar al alumno para la superación de los exámenes oficiales ORACLE que le acrediten con las dos siguientes certificaciones: “Oracle Certified Associate, Java SE 7 Programmer” y “Oracle Certified Professional, Java SE 7 Programmer”.E
l alumno adquirirá experiencia práctica en el desarrollo de aplicaciones Java em-presariales eficientes con las últimas versiones de la tecnología Java, aprenderá a reutilizar soluciones a problemas comunes en el desarrollo de software utilizando patrones de diseño y herramientas de diseño UML. El alumno aprenderá a identificar las mejores prácticas en el uso del lenguaje para crear aplicaciones Java robustas con gestión de excepciones, acceso a bases de datos y multiprocesamiento y que cumplan los están-dares Java EE, así como las tecnologías Java más recientes: desarrollo web con Servlets, JavaServer Pages, JavaServer Faces, persistencia contra bases de datos con JDBC y JPA, componentes de negocio remotos con EJB 3.1 , Servicios Web, mensajería JMS y seguri-dad.P
ara ello realizará ejercicios prácticos en los que se utilizará el entorno de desarrollo integrado (IDE) NetBeans 7 y el el servidor de aplicaciones GlassFish v3.A
sí mismo se formará y preparará al alumno para la superación de los exámenes de certificación oficial ORACLE. Para ello, el curso incluye formación presencial, prácticas de examen de certificación, manuales específicos para la preparación de la certificación y los derechos de examen de certificación.3
L
a formación es impartida por instructores certificados y con años de experiencia acreditada en formación Java SE, Java EE y formación para la preparación de cer-tificaciones Java.P
ara la obtención de la certificación, los candidatos deben superar dos exámenes:• Examen 1: (1Z0-803) Java SE 7 Programmer I
• Examen 2 : (1Z0-804) Java SE 7 Programmer II
¿Por qué certificarse?
Las certificaciones son la prueba palpable que asegura a las empresas que ese candidato tiene un excelente nivel.
La finalización del proceso de formación y certificación mejora las perspectivas laborales en el competitivo mercado tecnológico. El alumno que es capaz de aprobar, cuenta con una garantía objetiva con la que demostrar su nivel experto.
Se trata de una certificación oficial de FABRICANTE válida en cualquier lugar del mun-do.
Los profesionales certificados tienen mejores salarios que sus colegas no certificados. PROGRAMIA es centro examinador autorizado por lo que los candidatos podrán realizar el examen en nuestras instalaciones en BILBAO.
4
El curso está dirigido a :
El curso está dirigido a :
• Programadores interesados en adquirir los más altos conocimientos en el desarrollo de aplicaciones empresariales Orientadas a Objetos con las pla-taformas Java SE y Java EE.
• Programadores interesados en adquisición de la certificación que acredita- rá su dominio de la plataforma Java SE 7.
• Estudiantes de Ingeniería o Ingeniería Técnica Informática o Telecomuni- caciones
• Estudiantes de Grado Superior Informático de Desarrollo
• Informáticos de profesión y a programadores que no ejerzan en la actualidad
5
ÁREA JAVA SE 7
• MÓDULO 1: Introducción a la programación Orientada a Objetos con Java
• MÓDULO 2: Desarrollo de Aplicaciones con la plataforma Java SE 7
ÁREA JAVA EE 6 – Componentes Web
• MÓDULO 3: Desarrollo web con HTML 5, CSS y JavaScript
• MÓDULO 4: Desarrollo Aplicaciones Web con Java EE 6 (Servlets, JSP, Fil tros, HttpSession, …)
• MÓDULO 5: Desarrollo Aplicaciones Web con JSF 2.0
ÁREA JAVA EE 6 – Componentes de negocio y
persistencia
• MÓDULO 6: Desarrollo de componentes de negocio con EJB 3.1
• MÓDULO 7: Gestión de la persistencia contra Bases de Datos con JPA 2.0
• MÓDULO 8: Desarrollo de Servicios Web con JavaEE 6
• MÓDULO 9: Implementación de la seguridad en aplicaciones Java
ÁREA Diseño OO con UML
• MÓDULO 10: Análisis y Diseño de Aplicaciones Java con UML
ÁREA Proyecto y Certificación Oficial
• MÓDULO 11: Proyecto
• MÓDULO 12: Preparación para las certificaciones oficiales
6
Calendario y Ubicación.
Fecha Inicio: 04 de noviembre de 2013 Fecha Finalización: 17 de julio de 2014
Horario: de lunes a jueves de 9:00 a 14:00 horas Ubicación: Aulas de PROGRAMIA en Bilbao C/ Alameda Rekalde, 27 – 2 planta, 48009 Bilbao (Spain)
• Presentación del curso: 4 de noviembre de 2013
• Módulo 1: Introducción a la programación Orientada a Objetos con Java Duración: 55 horas
Fecha: del 5 al 21 noviembre de 2013
• Módulo 2: Desarrollo de Aplicaciones con la plataforma Java SE 7 Duración: 60 horas
Fecha: del 25 de noviembre al 12 de diciembre de 2013
• Módulo 3: HTML 5, CSS y Java Script para aplicaciones Web Duración: 35 horas
Fecha: del 16 de diciembre del 2013 al 09 de enero 2014
• Módulo 4: Desarrollo de Aplicaciones Web con Java EE 6 Duración: 50 horas
Fecha: del 13 al 28 de enero de 2014
• Módulo 5: Desarrollo de Aplicaciones Web con JSF 2.0 Duración: 30 horas
7
• Módulo 6: Desarrollo de componentes de negocio con EJB 3.1Duración: 40 horas
Fecha: del 10 al 20 de febrero de 2014
• Módulo 7: Gestión de la persistencia contra Bases de Datos con JPA
Duración: 40 horas
Fecha: del 03 al 13 de marzo de 2014
• Módulo 8: Desarrollo de Servicios Web con Java EE 6
Duración: 20 horas
Fecha: del 17 al 20 de marzo de 2014
• Módulo 9: Implementación de la Seguridad en Aplicaciones Java
Duración: 20 horas
Fecha: del 24 al 27 de marzo de 2014
• Módulo 10: Análisis y Diseño de Aplicaciones Java con UML
Duración: 40 horas
Fecha: del 31 de marzo al 10 de abril de 2014
• Módulo 11: Proyecto
Duración: 120 horas
Fecha: del 28 de abril al 17 de julio de 2014
• Módulo 12: Preparación Certificaciones Oficiales ORACLE
Duración: 100 horas
8
9
Módulo 1: Introducción a la
programación Orientada a Objetos con
Java
Descripción
Este curso proporciona al alumno los conocimientos necesarios para empezar a introdu-cirse en la programación orientada a objetos usando el lenguaje de programación Java, en la plataforma Java SE 7.
El alumno aprenderá a programar aplicaciones que empleen un buen diseño orientado a objetos aplicando la herencia, la encapsulación y la abstracción. Así mismo adquirirá conocimientos y práctica en la creación de aplicaciones java que usen estructuras de condición, estructuras de repetición, arrays y listas, la referencia a objetos y gestión de los errores de la aplicación mediante excepciones.
Contenido:
• Características de la Tecnología Java
• Programar pensando en Objetos
• Definición de Clases
• Trabajar con variables de tipos primitivos
• Trabajar con objetos y variables de referencia
• Uso de operadores
• Uso de estructuras de control (if...)
• Crear y usar arrays
• Crear y usar colecciones de tipo ArrayList
• Uso de estructuras de repetición (for, while, do while, …)
• Uso de la encapsulación, la herencia y la abstracción
• Gestionar errores mediante el uso de excepciones Java
• Empaquetar y ejecutar una aplicación Java mediante uso de JAR
Modalidad: Presencial
Duración: 55 horas
10
Módulo 2: Desarrollo de Aplicaciones con
la plataforma Java SE 7
Descripción
En este módulo se formará al alumno en todos los aspectos del CORE de la última pla-taforma Java SE 7 para el desarrollo de aplicaciones completas orientadas a objetos con Java. El alumno aprenderá a programar contra una base de datos usando el API JDBC e internacionalizar sus aplicaciones.
Se enseñará al alumno a usar patrones de diseño y a aplicar buenas prácticas con el fin de desarrollar aplicaciones Java robustas y fiables.
Contenido:
• Diseño avanzado de clases: Polimorfismo y métodos virtuales
• Los modificadores de accesibilidad
• El operador instanceof
• Castings de objetos
• Clases abstractas y generalización de tipos
• Los modificador static y final
• El patrón de diseño Singleton
• Diseño de clases abstractas
• Clases anidadas
• Tipos enumerados
• Definición y uso de Interfaces
• Trabajar contra una base de datos con el API JDBC
• El patrón de diseño DAO
• Trabajar con genéricos y colecciones
• Procesar y formatear cadenas
• Uso de excepciones y Aserciones. Mejores prácticas
Modalidad: Presencial
Duración: 60 horas
11
Módulo 3: DHTML 5, CSS y JavaScript
para aplicaciones Web
Descripción
Este módulo proporciona los conocimientos necesarios para desarrollar páginas web mucho más ricas, completas, interactivas e interesantes que las que se hacen hoy en día. Infinitas posibilidades con gráficos e imágenes vectoriales, fotos, vídeos y otros elemen-tos, mediante el uso de la nueva versión HTML 5 y las hojas de estilo CSS 3. Ambas, com-binadas con Javascript, permitirán dotar a los sitios web de posibilidades casi infinitas. HTML 5 y CSS 3 proponen mejoras interesantes para el desarrollo de interfaces, mejor Accesibilidad, operaciones en el cliente, antes reservadas al lado servidor, integración de video y audio sin necesidad de pluggin, nuevas estructuras, integración de DOM, etc ...
Contenido:
• Análisis de las Tecnologías de lenguajes de marcado
• Creación de la estructura de una página: párrafos, títulos, Keywords:
• Motores de búsquedas, Tipos de Metadatos, Metadatos XML, Metadatos Dublin Core
• Estilos y Usabilidad en Texto
• Creación de Listas
• Creación de enlaces (links)
• Trabajar con gráficos
Modalidad: Presencial
Duración: 35 horas
• Fundamentos de Entrada/Salidas
• Trabajar con ficheros
• Trabajar con hilos (multiproceso) y concurrencia
12
• Sistemas de navegación
• Tablas
• Formularios
• Audio y Video en HTML 5
• Definición y uso de hojas de estilo (CSS)
• Diseño dinámico de páginas con lenguaje de JavaScript
• Jquery
• Geolocalización
• Integrar distintas utilidades de Google Maps en la web PROGRAMIA
Módulo 4: Desarrollo Aplicaciones Web
con Java EE 6
Descripción
Este módulo enseña al alumno a desarrollar aplicaciones y componentes web con la tec-nología Servlets y JSP de la plataforma Java EE 6. Se mostrará como crear aplicaciones web robustas mediante el uso de la arquitectura MVC, la gestión de sesiones, los filtros y la integración con base de datos.
Además aprenderá a crear páginas web usando Expresión Language y etiquetas JSTL ( JSP Standard Tag Library ). Finalmente se mostrará como crear aplicaciones web seguras configurando el contenedor web Java EE.
Modalidad: Presencial
Duración: 50 horas
13
Contenido:
• Describir la arquitectura y protocolos de las aplicaciones web
• Implementación y uso de Servlets
• Implementación y uso de JSP
• Implementación de una arquitectura Modelo-Vista-Controlador (MVC)
• Comprender los detalles del protocolo HTTP en el manejo de formularios
• Gestión de HttpSessión y cookies
• Conocer el descriptor de despliegue para el mapeo e incialización de los servlets
• Uso de anotaciones para configurar Servlets
• Elementos de una página JSP
• Uso de Expresión Lenguaje (EL) en una página JSP
• Uso de etiquetas JSTL ( JSP Standard Tag Library ) en una página JPS
• Acceso a una base de datos usando JDBC o JPA desde una aplicación web
• Implementar aplicaciones web asíncronas PROGRAMIA
Módulo 5: Desarrollo Aplicaciones Web
con JavaServer Faces 2.0
Descripción
Este módulo enseña con profundidad todos los aspectos sobre la tecnología JSF. Los es-tudiantes desarrollarán los ejercicios de laboratorio usando el IDE Netbeans y GlassFish Application Server v3. La tecnología JavaServer Faces es un framework de componentes interfaz de usuario del lado del servidor para la creación de aplicación de web basadas en la tecnología Java.
El estándar JSF 2.0 que se incluye en la plataforma Java EE 6, simplifica enormemente de desarrollo de una aplicación web.
Modalidad: Presencial
Duración: 30 horas
14
Contenido:
• Desarrollar aplicaciones web con JavaServer Faces 2
• Diseñar Páginas JSF usando Facelets
• Diseñar Managed Beans
• Diseñar la Navegación
• Desarrollar y usar la Validación y Conversión de Datos
• Desarrollar Páginas Facelets Complejas
• Desarrollar Componentes UI Compuestos
• Trabajar con Eventos
• Configurar y Desplegar una Aplicación Web JSF
Módulo 6: Desarrollo de Componentes de
negocio con EJB 3.0
Descripción
Este módulo enseña como construir funcionalidad de back-end usando la tecnología de componentes Enterprise JavaBeans (EJB) versión 3.1. El alumno aprenderá a crear EJB de sesión y EJBs dirigidos por mensajes, así como a aplicar buenas prácticas de progra-mación, gestionar transacciones, usar servicios de mensajería JMS y a implementar EJBs dirigidos por mensaje.
Modalidad: Presencial
Duración: 40 horas
15
Contenido:
• Introducción a la tecnología de EJBs
• Comprender como trabaja el contendor de EJBs de Java EE
• Implementar EJBs de Sesión
• Acceso y uso de un EJB de sesión mediante el API JNDI o a través de la inyección de la dependencia.
• Conocer e implementar EJBs de sesión con estado
• Conocer e implementar EJBs de sesión sin estado
• Conocer e implementar EJBs SingleTone
• Desarrollo de aplicaciones Java EE de mensajería con el API JMS
• Conocer e implementar EJB dirigidos por mensajes
• Implementar políticas transaccionales
Módulo 7: Gestión de la persistencia
contra Bases de Datos con JPA
Descripción
Este módulo enseña de forma minuciosa todos los pormenores de construir aplicaciones de base de datos usando la tecnología estándar Java ORM (object relational-mapping ), Java Persistence API. Este curso cubre todas las nuevas características de Java Persistence API 2.0.
En el curso el alumno aprenderá los conceptos clave de Java Persistence API, aprenderá a crear modelos de entidades robustos, crear consultas dinámicas y estáticas usando JPA. Adicionalmente, el curso cubre el uso de JPA tanto en una aplicación de escritorio Java SE, como en una aplicación web Java EE, usando JPA con la tecnología EJB 3.1.
Modalidad: Presencial
Duración: 40 horas
16
Contenido:
• Introducción a Java Persistence API
• Definir las entidades del sistema con Java Persistence API
• Trabajar con el Gestor de Entidad, Entity Manager de JPA
• Mapear los diferentes tipos de relaciones entre entidades, one-to-one, one-to-many, many-to-one, many-to-many
• Mapear la herencia mediante diferentes estrategias
• Persistir entidades que tengan definidas enumeraciones o colecciones
• Trabajar con Consultas a la base de datos con JQL y HQL
• Usar JPA desde una aplicación Java SE
• Usar JPA desde una aplicación Java EE (Servlets, EJB, MDB, …)
• Implementar transacciones y gestión de bloqueos
Módulo 8: Desarrollo de Servicios Web
con Java EE 6
Descripción
Este módulo proporcionará al alumno los conocimientos necesarios para diseñar, im-plementar y desplegar servicios web y clientes java de servicios web. usandola tecnología Java EE 6.
Contenido:
• Describir la tecnología Java en la implementación de servicios web
• Implementar servicios web usando el API JAX-WS (Java API for XML Web Services)
Modalidad: Presencial
Duración: 20 horas
17
• Implementar servicios web usando el API JAX-RS (API for XML RestfulServices)
• Implementar un Enterprise JavaBeans (EJB) como un web service usando JAX-WS y JAX-RS
• Conocer los mensajes SOAP
• Conocer y crear los WSDL (Web Services Description Language)
• Implementar clientes Java que accedan a un Servicio Web de terceros.
Módulo 9: Implementar la Seguridad en
Aplicaciones Java
Descripción
Este módulo proporcionará al alumno los conocimientos necesarios para implementar la seguridad en una aplicación Java EE completa.
Contenido:
• Introducción a la seguridad en una aplicación Java EE
• Implementar la seguridad de capa web
• Implementar la seguridad de capa de negocio
• Implementar seguridad programática
• Implementar seguridad declarativa
Modalidad: Presencial
Duración: 20 horas
18
Módulo 10: Análisis y Diseño de
Aplicaciones Java con UML
Descripción
Este módulo combina de manera eficaz formación sobre los procesos de desarrollo de software, las tecnologías de programación orientada a objetos y la notación UML 2 (Uni-fied Modelling Language).
Para ello se proporciona una guía práctica y completa del análisis y diseño de aplicacio-nes Java donde se abarca desde la recopilación de requisitos hasta la implantación del sistema.
Contenido:
• Definir el documento de Visión del proyecto
• El proceso de toma los requisitos funcionales del sistema.
• El proceso de análisis los resultados de la entrevista para identificar los requisitos funcionales, no funcionales ,los riesgos y las limitaciones.
• Crear un diagrama de caso de uso.
• Documentar un caso y sus escenarios en un formulario de caso de uso.
• Identificar los elementos esenciales en un diagrama de actividad.
• Validar un caso de uso con un diagrama de actividad.
• Construir un modelo de Dominio utilizando un diagrama de clases.
• Validar el modelo de Dominio con uno o varios diagramas de objetos. Creación del modelo de Análisis siguiendo el método de analisis robusto.
• Crear un diagrama de colaboración UML.
• Crear un diagrama de secuencia UML.
• Introducción a los conceptos fundamentales de arquitectura
• Describir el flujo de trabajo de la arquitectura.
• Describir los diagramas de las vistas de arquitectura clave.
Modalidad: Presencial
Duración: 40 horas
19
Módulo 11: Proyecto
Descripción
El alumno desarrollará una aplicación Java EE 6 completa en la que se aplicarán todas las tecnologías que se han visto al lo largo de programa formativo. Las tecnologías que se emplearán en la implementación son:
• Capa Cliente: XHTML 5 , CSS y JavaScript
• Capa Presentación: JSF 2.0
• Capa Negocio: EJB 3.1
• Capa Integración: Java Persistencie API
• Capa Recursos: Base de Datos Derby (Java DB)
• Describir los diagramas de las vistas de arquitectura clave.
Modalidad: Presencial
Duración: 120 horas
• Seleccionar el tipo de arquitectura.
• Crear el modelo de arquitectura para la capa cliente y capa de presentación
• Creación del modelo de Arquitectura para la capa de Negocio
• Creación del modelo de Arquitectura para las capas Recurso e Integración
• Crear un modelo de Solución para una aplicación de interfaz gráfica.
• Crear un modelo de Solución para una aplicación de interfaz de usuario Web.
20
Módulo 12: Preparación a la Certificación
Descripción
Este curso está diseñado para orientar y formar al alumno con el fin de que adquiera to-dos los conocimientos necesarios para abarcar los objetivos del examen de certificación. Para ello se proporcionan detalles sobre el proceso de certificación, objetivos del exa-men, prácticas de examen comentadas por un instructor experto y sesiones explicativas adaptadas al nivel del grupo.
El curso está diseñado en modalidad mixta y está formado por una parte presencia y una parte online:
• Parte online: prácticas de examen online
• Parte presencial: 5 sesiones presenciales de 4 horas.
Sesiones Presenciales
En la primera sesión presencial se orientará al alumno en los objetivos del examen y se le explicará como usar la plataforma de prácticas de examen online . Posteriormente se dará un periodo de tiempo a los alumnos para que completen las prácticas de examen tras las cuales se realizará la segunda sesión presencial donde se resolverán todas las du-das finales que hayan podido surgir durante la realización de las prácticas y que no hayan podido ser resueltas adecuadamente vía email.
Modalidad: Mixto ( 20 horas presenciales + 80 online)
Duración: 100 horas
21
Prácticas de examen online
Las prácticas de examen de certificación tienen como objetivo conocer el formato del examen de certificación, el tipo de preguntas y los objetivos del mismo. Se realizan en el aula o vía web desde el trabajo o desde casa. Las prácticas constan de preguntas de tipo test con la solución y su correspondiente explicación.
El alumno podrá en todo momento consultar vía email cualquier duda relacionada con las prácticas de examen.
A la finalización del módulo el alumno podrá presentarse a los siguientes exámenes de certificación :
• 1Z0-803 Exam ‘Java SE 7 Programmer I’
22
23
Verónica Fernández
Licenciada en Informática por la Universidad de DEUSTO de Bilbao y Diplomada en Especialización en Docencia Universitaria y programadorJava SE Certificado.
En su trayectoria profesional ha sido durante 3 años Profesora en la Universidad de Deusto – ESIDE Impartiendo asignaturas del departamento de Sistemas Informáticos en el área de Sistemas y Desarrollo de proyectos. También ha ejercido durante mas de 8 años como instructora oficial de Sun Microsystems actualmente ORACLE para la formación tecnologías Java y Oracle DB.
Actualmente es instructora, consultora y analista en:
- Diseño de arquitecturas Java EE, N-tier con RMI, CORBA, IIOP, conectores, Integración de sistemas, accesos JDBC, etc.
- Modelos de componentes y arquitectura JavaEE: Servlets, JSP con JSF, JavaBeans, EnterpriseJavaBeans, JPA y WebSer vices.
- Arquitectura de servidores de aplicaciones y despliegue e implantación JavaEE: Oracle Application Server R2 y R3 y Oracle WebLogic, Servidores y entornos relacionados con software libre: NetBeans, Glassfish y Sun ONE
- Estructura y Administración de Oracle 9i y 10g
– Programación de SQL, PL/SQL y herramientas Oracle (Portal, Discoverer, etc…)
24
Begoña Olea
Técnico Informático de Gestión por la UNED y programador Java SE Certificado . En su trayectoria profesional ha ejercido como Instructora oficial de Sun Microsystems, actualmente ORACLE, en tecnologías Java. También ha ejercido como formador en otras tecnologías como .NET, Android, XML, UML, SQL Server y Tec-nologías asociadas como freelance para varias empresas de for-mación en Madrid. Ha participado como analista y programadora en diversos proyectos de desarrollo en tecnologías Java EE, C++ y Power Builder.
Actualmente es fundadora de la empresa PROGRAMIA y ejerce como instructora, consultora y analista en :
- Diseño de arquitecturas Java EE, N-tier y aplicación de buenas practicas y patrones
- Modelos de componentes y arquitectura JavaEE: Servlets, JSP con JSF, JavaBeans, EnterpriseJavaBeans, JPA y WebSer vices.
- Desarrollo de aplicaciones móviles con Java ME y con Android.