PARTE 1. UML 2.0: PATRONES DE DISEÑO DE SOFTWARE
TEMA 1. INTRODUCCIÓN A UML
- Introducción
- El origen del UML: Unified Modeling Language
- El Proceso Unificado
- MDA: Model Driven Architecture
TEMA 2. CONCEPTOS DE LA ORIENTACIÓN A OBJETOS
- Introducción
- El objeto
- La abstracción
- Clases de objetos
- Encapsulación
- Herencia
- Especialización y generalización
- Clases abstractas y concretas
- Polimorfismo
- Composición
- La especialización de los elementos: la noción de estereotipo en UML
TEMA 3. MODELADO I
- Modelado de Requisitos: Diagrama de los casos de uso
- – Casos de uso
- – Actor
- – Escenario
- – Representación textual de los casos de uso
- Modelado de la dinámica
- – Diagrama de secuencia
- – Diagrama de comunicación
- – Marcos de interacción
- Modelado de objetos
- – Conocer los objetos del sistema por descomposición
- – Representación de clases
- – Las asociaciones entre objetos
- – Relación de generalización/especialización entre clases
- – Diagrama de objetos o instancias
- – Diagrama de estructura compuesta
TEMA 4. ESTRUCTURACIÓN DE LOS ELEMENTOS DE MODELADO
- Introducción
- Empaquetado y diagrama de empaquetado
- Asociaciones entre empaquetados
TEMA 5. MODELADO II:
- Modelado de objetos
- – La noción de estado
- – El cambio de estado
- – Elaboración del diagrama de estados-transiciones
- – El diagrama de timing
- Modelado de las actividades
- – Las actividades y los encadenamientos de actividades
- – Las particiones o calles
- – Las actividades compuestas
- – El diagrama de vista de conjunto de las interacciones
- Modelado de la arquitectura del sistema
- – El diagrama de componentes
- – El diagrama de despliegue
TEMA 6. LOS PERFILES
- Introducción
- Los perfiles
- Estereotipos
- Tagged values
TEMA 7. VISUAL PARADIGM
- Introducción
- Instalación
- Interface
- Crear un Proyecto
- Guardar un proyecto
- Diagrama de clases
- – Crear Y editar un diagrama de clases
- – Crear y editar elementos
- – Agregar atributos y operaciones
- – Crear generalización
- – Crear asociación
- Análisis textual
- – Crear diagrama de análisis textual
- – Determinar clases y elementos
- – Crear clases candidatas
- Diagrama de componentes
- – Crear un componente
- – Crear una interface
PARTE 2. PROGRAMACIÓN CON JAVA STANDARD EDITION
MODULO 1. CONCEPTOS BÁSICOS DEL LENGUAJE JAVA
TEMA 1. INTRODUCCIÓN
- Introducción
- Arquitectura de Java
- Características de Java
TEMA 2. DESARROLLANDO Y PROBANDO PROGRAMAS CON TECNOLOGÍA JAVA
- Introducción
- Instalación y configuración del kit de desarrollo de Sun (JDK)
- Procesos para crear un programa en Java
- Esqueleto de una clase
TEMA 3. PROGRAMACIÓN ORIENTADA A OBJETOS
- Introducción
- Clases
- Métodos de clase
TEMA 4. DECLARANDO, INICIALIZANDO Y USANDO VARIABLES
- Introducción
- Elementos básicos del lenguaje y sintaxis de Java
- Alcance de las variables
- Declarando variables
- Conversión entre tipos (casting)
- Laboratorio 1: Definiendo tipos de datos
- Laboratorio 2: Definiendo tipos de datos II
- Laboratorio 3: Definiendo tipos de datos III
- Laboratorio: Casting entre tipos de datos
TEMA 5. CREANDO Y USANDO OBJETOS
- Introducción
- Declarar, instanciar e inicializar variables de referencia de objeto
- Variables static de clase
- Variables final o constantes
- Constructores
- Herencia
- Paquetes
- Interfaces
TEMA 6. CARACTERÍSTICAS AVANZADAS DE CLASES
- Introducción
- this y super
- Destrucción de objetos
- Crear y usar tipos enumerados
- Importaciones estáticas
- La clase String
- Introducción a los flujos o streams
- Laboratorio 1: Validación Email
- Laboratorio 2: Clase Objeto cadena
- Enunciado
- Solución
TEMA 7. USANDO OPERADORES Y CONSTRUCTORES
- Introducción
- Operadores y expresiones
- Precedencia entre operadores
- Sentencia return
- Sentencias de excepción, bloques try, catch, finally
- Aserciones
- Laboratorio: Averiguar día de nacimiento de la semana
TEMA 8. USANDO LOOPS
- Introducción
- Sentencia if-else
- Sentencia switch-case
- Sentencia while
- Sentencia do-while
- Sentencia for
- Laboratorio: Conjetura Collatz
TEMA 9. DESARROLLANDO Y USANDO MÉTODOS
- Introducción
- Métodos (Funciones Miembro)
- Métodos de objeto
- Parámetros en los métodos
- Destrucción de objetos
- Definición de métodos heredados (override)
- Clases y métodos abstractos
- Clases y métodos finales
- Laboratorio: Creación del objeto Calculadora
TEMA 10. IMPLEMENTANDO ENCAPSULACIÓN
- Introducción
- Paquetes
- Modificadores de ámbito
- Laboratorio: Creación y uso de paquetes.
TEMA 11. CREANDO Y USANDO ARREGLOS
- Introducción
- Concepto de Array
- Arrays Unidimensionales
- Arrays Multidimensionales
- Arrays de Caracteres
- Colecciones
- Laboratorio: Temperaturas Anuales
TEMA 12. IMPLEMENTANDO HERENCIA
- Introducción
- Herencia
- Laboratorio: Proyecto clases agenda
MODULO 2. CONCEPTOS AVANZADOS E INTERFACES GRÁFICAS DEL LENGUAJE JAVA
TEMA 1. PRINCIPIOS BÁSICOS DE E/S
- Introducción
- Argumentos de la línea de comandos
- Propiedades del Sistema
- Clase Properties
- Ficheros
- Laboratorio: Uso de la clase File
- Laboratorio: Uso de las clases FileOutputStream y FileInputStream
TEMA 2. E/S DE CONSOLA Y E/S DE ARCHIVOS
- Introducción
- System.in
- System.out
- System.err
TEMA 3. CREACIÓN DE INTERFACES GRÁFICAS CON EL API SWING
- Introducción
- Monitor y tarjeta gráfica
- Entornos gráficos IDE’s
- El sistema de coordenadas
- Clases de Java para la programación gráfica y su evolución
- Laboratorio: Manejo de los cuadros de diálogo
TEMA 4. CREACIÓN DE INTERFACES GRÁFICAS CON EL API SWING
- Introducción
- Modelo nuevo de delegación. (Source, Listener, Adapter)
- Ejemplos con eventos
- Laboratorio 1: Movimiento entre frames
- Laboratorio 2: Cargador de imágenes
TEMA 3. APLICACIONES BASADAS EN LA INTERFAZ GRÁFICA
- Introducción
- Creación de un menú
- Creación de un Toolbar
- JPopupMenu
TEMA 4. HILOS
- Introducción
- Ciclo de vida de un thread
- Métodos de la clase Thread
- Sincronización
TEMA 5. PROGRAMACIÓN DE RED
- Introducción
- Clase InetAddress
- Realizar Laboratorio: Uso de la clase InetAddress
- Socket
- Clase URL
- CLASE URLConnetion
- CLASES DatagramPacket y DatagramSocket
- RMI
MODULO 3. DESARROLLANDO APLICACIONES PARA LA PLATAFORMA JAVA
TEMA 1. UBICANDO EL MODELO JAVA EE EN CONTEXTO
- Introducción
- Diferentes versiones y plataformas Java existentes
- Descripción de aplicaciones empresariales JEE
- Introducción a las APIs y servicios Java EE
- Introducción a los Servidores de Aplicaciones
TEMA 2. MODELO DE COMPONENTES DE JAVA EE Y PASOS DE DESARROLLO
- Introducción
- Patrones de diseño
- Modelo Vista Controlador
- Comunicación Síncrona y Asíncrona
- Capas de arquitectura JEE
- Empaquetado de aplicaciones JEE
TEMA 3. MODELO DE COMPONENTES WEB
- Introducción
- Componentes web en una aplicación Java EE
- Envío de información request y response HTTP
- Diferenciación entre información con servlets y JSP
- JSP (Java Server Pages)
TEMA 4. DESARROLLANDO SERVLETS
- Introducción
- CGI 85
- Ciclo de vida de un servlet
- Estructura de un servlet
- Configuración de los Servlets mediante anotaciones y descriptores
- Uso de las APIs request y response en servlets
- Métodos de información del servidor con servlets
TEMA 5. DESARROLLANDO CON LA TECNOLOGÍA DE PÁGINAS JSP
- Introducción
- Características de Java Server Pages
- Elementos dentro de Java Server Pages
- Variables implícitas en las páginas JSP
- Action Tags
- Laboratorio 1: Datos de Empleados
- Laboratorio 2: Custom TagsDepartamentos
- Laboratorio 3: Cargar Select dinámicamente con JavaBeans
TEMA 6. MODELO DE COMPONENTES EJB
- Introducción
- Componentes EJB
- Tipos de beans
- Anotaciones de un bean
- Role de EJB dentro de las aplicaciones JEE
- Estructura de EJB
TEMA 7. IMPLEMENTACIÓN DE LAS SESIONES EJB 3.0
- Introducción
- Tipos de Beans Session
- Ciclo de vida de los beans de Session
- Clientes del Bean
- Laboratorio: Buscador Empleado
TEMA 8. LA PERSISTENCIA API DE JAVA
- Introducción
- Beans de Entidad
- Anotaciones de entidades POJO’s
- Búsquedas de datos en Entidades
- Laboratorio: Buscador de departamentos
TEMA 9. IMPLEMENTANDO UNA POLÍTICA TRANSACCIONAL
- Introducción
- Conceptos clave de transacciones
- Especificaciones transacción JEE
- Transacciones JTA
TEMA 10. DESARROLLANDO APLICACIONES JAVA USANDO MENSAJERÍA
- Introducción
- Servicios de mensajería
- Java Message Service API
- Modelo de programación de JMS
- Message Driven Bean
- Laboratorio: Crear Servicio Mensajería
TEMA 11. DESARROLLO DEL ENVÍO DE MENSAJES
- Introducción
- Interceptores
- Implementación de los mensajes en Beans MDB
- Contenedor de JMS
- Laboratorio: Crear Servicio Mensajeria
TEMA 12. MODELO DE LOS SERVICIOS WEB
- Introducción
- Estructura de los servicios Web
- Modelo de Servicios Web
- Servicios JAX-RS
TEMA 13. MODELO IMPLEMENTACIÓN DE SERVICIOS JAVA EE WEB SERVICES CON JAX-WS
- Introducción
- Servicios JAX-WS
- Laboratorio: Consumir Servicio Web Externo
TEMA 14. IMPLEMENTACIÓN DE UNA POLÍTICA DE SEGURIDAD
- Introducción
- Implementación de la seguridad servidor y EJB
- Mapeo de Roles a grupos
- Seguridad de aplicaciones web en servlets y jsp