Conceptos | Proceso de diseño y programación | Herramientas de diseño | Herramientas de programación |
1. Paradigmas de los lenguajes de programación 1.1. Objetivo de un lenguaje de programación 1.2. Objetivo de un paradigma 1.3. Descripción general de los paradigmas de los lenguajes de programación | 2. Problemas tradicionales del desarrollo de software 2.1. Complejidad del software 2.2. Desarrollo de software 2.3. Encapsulamiento y reuso de software | ||
3. Paradigma orientado a objetos 3.1 Características generales del paradigma orientado a objetos 3.2. Clases y objetos 3.3 Interacción entre objetos 3.4 Interacción entre clases 3.5. Relaciones entre objetos 3.6. Relaciones entre clases | 4. Proceso de diseño y programación orientado a objetos 4.1. Ciclo de vida del desarrollo de software 4.2 Delimitación del problema 4.3. El proceso de análisis y diseño 4.3.1 Identificación de clases 4.3.2 Especificación de atributos 4.3.3 Detección de responsabilidades 4.3.4 Detección de relaciones 4.3.5 Empaquetado | 5. Modelado orientado a objetos con UML 5.1. UML 5.2. Diagramas de casos de uso 5.3. Diagrama de clase 5.4. Diagramas de secuencia 5.5. Diagramas de estado | 6. El lenguaje de programación Java 6.1. Orientación a objetos en Java 6.2 Clases y objetos en Java 6.3 Creación e inicialización de objetos 6.4 Intercambio de mensajes entre objetos 6.5 Herencia 6.6 Polimorfismo 6.7 Interfaces |
7. Patrones de diseño 7.1. Definición de patrones 7.2. Ejemplos de patrones de diseño | 8. Uso de patrones 8.1. Lineamientos para el diseño de clases 8.2. Aplicación de patrones |