UNIVERSIDAD DE PIURA ESCUELA TECNOLÓGICA SUPERIOR Cursos en Tecnología Informática 2012 ESPECIALIZACIÓN EN DESARROLLO DE APLICACIONES EMPRESARIALES CON JAVA EE Objetivos: Ofrecer al alumno los conocimientos necesarios para la construcción de sistemas informáticos bajo una arquitectura cliente servidor web. Introducir al alumno los conceptos de patrones y marcos de trabajo. Conocer y utilizar los servidores de aplicaciones más utilizados del mercado. Dirigido a: Estos programas formativos están pensados para personas que quieran desarrollar sus conocimientos o su carrera profesional en las áreas impartidas y que cumplan al menos uno de los siguientes requisitos: Haber recibido formación pública o privada en áreas relacionadas con la programación, incluyendo las distintas titulaciones de carreras informáticas. Ser profesional de la informática. Poder demostrar conocimientos informáticos suficientes como para desarrollar el presente curso. En cada una de sus vertientes, esta Especialización, es la elección adecuada para las personas que se correspondan con alguno de los siguientes perfiles: Profesionales del sector que deseen conocer las más modernas tecnologías aplicadas en el sector informático. Estudiantes universitarios o de formación profesional que habiendo finalizado su formación o encontrándose en los últimos cursos deseen formarse en las técnicas y tecnologías utilizadas por las empresas más innovadoras. Duración: 96 hs. INFORMACIÓN GENERAL: Horario y lugar: Martes y viernes de 7:00 a 09:00 p.m. (04 hs. semanales) Centro de cómputo 31A ETS-UDEP Universidad de Piura – Av. Ramón Mugica N° 131 Urb. San Eduardo, Piura Inicio de clases: Martes 04 de setiembre del 2012 UNIVERSIDAD DE PIURA ESCUELA TECNOLÓGICA SUPERIOR Cursos en Tecnología Informática 2012 Incluye: - Diploma que acredita la aprobación del curso de especialización o certificado de participación en el mismo, los costos de éstos están incluidos en el precio total del curso. - Asesoría permanente durante el tiempo de dictado del curso, previa coordinación con el (los) expositor(es). Ventajas y características del curso: - El alumno participante contará con permanente asesoría en el transcurso de la duración del curso previa coordinación con el instructor. - Cada participante contará con una PC. - Instructores con amplios conocimientos y experiencia. - El curso es teórico práctico (30/70). - Se realizarán evaluaciones académicas progresivas. - Buen ambiente de estudio y Centro de cómputo con aire acondicionado. - A todos los participantes se les entregará 01 CD RW conteniendo el temario realizado con sus respectivas aplicaciones y un Diploma de aprobación o certificado de participación, según sea el caso; los costos de éstos están incluidos en el costo total del curso. Inversión: La inversión total del curso es de S/2000.00 nuevos soles + inscripción y puede hacerse efectiva de la siguiente manera: 05 cuotas de S/. 400.00 + S/. 100.00 de inscripción. Mayores informes e inscripciones: Secretaría de Escuela Tecnológica Superior de la Universidad de Piura (UDEP). Teléfonos: 284500 Anexos: 3941 ó 3949 E-mail: mubillus@udep.edu.pe UNIVERSIDAD DE PIURA ESCUELA TECNOLÓGICA SUPERIOR Cursos en Tecnología Informática 2012 TEMARIO: El curso está dividido en 5 módulos. Módulo I: Programación Orientada a Objetos Duración: 20 horas. Objetivo: Introducción a los conceptos relacionados con la programación orientada a objetos utilizando la plataforma J2se (Java Edición Estándar). Capítulo I 1.1 1.2 1.3 1.4 1.5 Requerimientos para el uso de java. Conceptos. Orígenes. Entorno de desarrollo. Configuración de variables de entorno. Características. Capítulo II 2.1 2.2 2.3 2.4 La primera Aplicación Primera aplicación Java. Estructuras de control. Operadores de incremento / decremento. Operadores aritméticos en Java Capítulo III 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 Definiendo clases, objetos y derivados. Definición. Instancias. Propiedades y métodos. Declaración de métodos con parámetros. Inicialización de objetos – constructores. Finalizadores. Miembros estáticos. Variables finales. Herencia. Alcance de miembros – paquetes. Encapsulamiento. Importación estática. Constructores en subclases. Tipos de datos ( primitivos – referenciados ). Promoción de argumentos y casting. Sobrecarga de métodos. Paso de parámetros por valor y por referencia. UNIVERSIDAD DE PIURA ESCUELA TECNOLÓGICA SUPERIOR Cursos en Tecnología Informática 2012 3.18 3.19 3.20 3.21 Arreglos. Polimorfismo – Clases abstractas. Polimorfismo – Interfaces. Clases y métodos finales. Capítulo IV 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 Construyendo la interfaz gráfica. Introducción Conociendo SWING Componentes Gráficos: JLabel, JTextField, JPasswordField Manejo de eventos JButton Eventos del mouse Distribución de componentes gráficos Paneles Capitulo V 5.1 5.2 5.3 5.4 Controlando los errores. Introducción Uso de excepciones. Cuando y por qué Manejo de excepciones en Java Bloques TRY – CATCH Capítulo VI 6.1 6.2 6.3 6.4 Accediendo a las Fuentes de Datos Introducción Sistemas de Bases de Datos Lenguaje de consultas estructurado (SQL) Lectura, inserción y actualización de una base de datos Módulo II: Plataforma Java Empresarial Duración: 24 horas. Objetivos: Introducción al uso de Servlets y JSP (Java Server Pages) para la construcción de aplicaciones web. Implementación y uso de contenedores web y servidores de aplicaciones para el despliegue de aplicaciones web. Capítulo I 1.1 1.2 1.3 1.4 Java Empresarial Conceptos ¿Qué significan los Servlets y JSP? Funcionamiento. Características. Concepto de aplicaciones web dinámicas. Contenido dinámico. Java Empresarial Vs. Otras Tecnologías. UNIVERSIDAD DE PIURA ESCUELA TECNOLÓGICA SUPERIOR Cursos en Tecnología Informática 2012 Capítulo II 2.1 2.2 2.3 2.4 Configurando el Entorno. Contenedor Web. Concepto. Descarga. Configuración del contenedor web. Apache Tomcat. Estructura. Configuración. Conociendo la estructura de una aplicación web. Capítulo III 3.1 3.2 3.3 3.4 Servlets Concepto. Estructura. Características. Ciclo de vida. Generando contenido dinámico. Empaquetando la aplicación web. Despliegue en el contenedor web. Capítulo IV 4.1 4.2 4.3 4.4 4.5 4.6 Captura de datos Solicitudes. Tipos. Estructura. Recepción de parámetros. Tipos. HTML. Capturando información. Generando y enviando la respuesta del contenedor web. Códigos de estado. Redirección de páginas. Capítulo V 5.1 5.2 5.3 5.4 Sesiones Concepto. Uso. Objeto HTTPSession. Almacenando y recuperando información en la sesión. Carrito de compras. Capítulo VI 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 Presentación de la información utilizando JSP JSP. Concepto ¿Por qué usar JSP? Sintaxis. Ejemplos. Expresiones JSP Scriptles Declaraciones. Directivas de páginas. Encapsulando la información con Java Beans. Interacción. JSTL Capítulo VII 7.1 7.2 7.3 Accediendo a las bases de datos JDBC. Controlando excepciones enviadas a los usuarios. Pool de conexiones. Beneficios. Implementación. Transacciones utilizando JDBC. UNIVERSIDAD DE PIURA ESCUELA TECNOLÓGICA SUPERIOR Cursos en Tecnología Informática 2012 Capítulo VIII 8.1 8.2 8.3 Controlando los accesos JAAS. Concepto. Uso. Tipos. Definición de roles. Implementando y definiendo roles a nuestra aplicación web. Módulo III: Plataforma EJB (Enterprise Java Beans). Duración: 18 horas. Objetivos: Introducción a la creación y uso de componentes EJB locales y/o distribuidos. Ventajas y desventajas del uso de EJBs. Uso de un contenedor EJB / Servidores de Aplicaciones. Capítulo I 1.1 1.2 1.3 1.4 1.5 Concepto EJB Arquitectura de los componentes EJB. Tipos de EJB El contenedor de EJBs. Inyección de dependencias Vs. Jndi. Primer ejemplo. Capítulo II 2.1 2.2 2.3 2.4 2.5 Lógica de Negocio con Sessions Beans Motivos del uso de un session bean. Stateless vs Stateful. Anotación @EJB Consideraciones de performance, Recomendaciones al uso de sessions beans. Capítulo III 3.1 3.2 3.3 Transacciones y Seguridad Conceptos transaccionales. Propiedades ACID. Gestores de transacciones / Transacciones gestionadas por el contenedor. Transacciones gestionadas por Beans. Seguridad en componentes EJB. 3.4 3.5 UNIVERSIDAD DE PIURA ESCUELA TECNOLÓGICA SUPERIOR Cursos en Tecnología Informática 2012 Módulo IV: Patrones Empresariales Duración: 10 horas. Objetivos: Introducción al concepto de patrones J2ee aplicados al desarrollo de aplicaciones web empresariales. Buenas prácticas en el desarrollo de aplicaciones empresariales a través de la presentación de casos de estudio. Capítulo I 1.1 1.2 1.3 Capítulo II 2.1 Introducción al concepto de Patrones Patrones, concepto, usos. Catalogo de los principales patrones Jee. Beneficios del uso de patrones en una aplicación empresarial. Capa de Presentación / Consideraciones de Diseño y Malas Prácticas Consideraciones de Diseño en la capa de Presentación 2.1.1 Gestión de las Sesiones. 2.1.2 Duplicate Form Submissions 2.1.3 Validaciones 2.2 2.2.1 Malas Prácticas en la Capa de Presentación 2.2.4 Control del Código en Múltiples Vistas Exponiendo estructuras de la capa de presentación hacia la capa de negocios. Exponiendo estructuras de la capa de presentación a los objetos del dominio. Permitiendo los “Duplicate Form Submissions” 2.2.5 Creando “Controladores Gruesos” 2.2.2 2.2.3 Capítulo III 3.1 Capa de Negocio / Consideraciones de Diseño y Malas Prácticas Consideraciones de Diseño en la capa de Negocios 3.1.1 Usando Sessions Beans. 3.1.2 Almacenamiento de estados en la capa de negocios 3.1.3 Usando Entity Beans 3.1.4 Lógica de negocio en los entitys beans. 3.2 Malas Prácticas en la Capa de Negocio e integración 3.2.1 Mapeando los objetos del modelo directamente al UNIVERSIDAD DE PIURA ESCUELA TECNOLÓGICA SUPERIOR Cursos en Tecnología Informática 2012 modelo EJB 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 Mapeando el modelo relacional directamente al modelo EJB Mapeando casos de uso hacia un Session Bean. Exponiendo los atributos empresariales a través de métodos GET / SET. Clientes adicionan información de los componentes de Negocio Exponiendo excepciones EJB a clientes NO-EJB. Módulo V: Spring Framework Duración: 24 horas. Objetivos: Introducción al uso de marcos de trabajo Java basados en el patrón MVC. Implementación de una aplicación Java Empresarial Ligera. Capítulo I 1.1 1.2 1.3 1.4 1.5 Introducción al Framework Spring Spring. Concepto. Módulos Spring. Interfaces - Inyección de dependencias. – Ejemplo. Entorno de desarrollo – Netbeans. Arquitectura de aplicaciones usando Spring. Capítulo II 2.1 2.2 2.3 2.4 2.5 Core Spring El Contenedor Spring – Bean Factory, Application Context. Configurando Beans. Inyectando en las propiedades de los Beans. Autowiring. Dependencias entre Beans. Capítulo III 3.1 3.2 3.3 3.4 3.5 Acceso a datos con Spring JDBC Patrón DAO. Spring JDBC. Características y diferencias con JDBC tradicional. Configurando Pool de conexiones. Plantillas JDBC Transacciones. Formas de implementar. Capítulo IV 4.1 4.2 4.3 4.4 4.4 MVC en Spring. Módulo MVC. Concepto. Creando una aplicación web. Arquitectura de una aplicación MVC Spring. El DispatcherServlet. Concepto. Tipos de controladores. JSP. Presentando y recogiendo la información. UNIVERSIDAD DE PIURA ESCUELA TECNOLÓGICA SUPERIOR Cursos en Tecnología Informática 2012 Capitulo V 5.1 5.1.1 5.1.2 Seguridad en Spring. Autenticación y Autorización. Realms / Grupos. Autenticación por Base de Datos. Capítulo VI 6.1 6.2 6.3 Reduciendo el código XML Anotaciones en Spring. Definición de beans con anotaciones. Definición de controladores con anotaciones.