TY - BOOK AU - Vélez Serrano,José F. AU - Peña Abril, Alberto, autor. AU - Francisco Gortázar Bellas TI - Diseñar y programar todo es empezar: una introducción a la programación orientada a objetos usando "UML" y "Java" T2 - ( Informática ) SN - 9788499820743 U1 - 005.133 PY - 2011/// CY - Madrid, España PB - Universidad Rey Juan Carlos, Servicio de Publicaciones : Dykinson, D.L. KW - Programación orientada a objetos KW - Java (Lenguaje de programación) N1 - Incluye índice; Tabla de contenidos -- Indice -- Capitulo 1 Introducción a la programación orientada a objetos -- 1.1. Complejidad del software: origen y tratamiento -- 1.1.1 Herramientas para tratar la complejidad -- 1.1.2 Evolución de Ios lenguajes de programación -- 1.1.3 Paradigmas dc programación -- 1.2. Programación orientada a objetos 1.2.1 Abstract 1.2.2 Encapsular 1.2.3 Jerarquizar 1.2.4 Modularizar 1.2.5 Tipo 1.2.6 Concurrencia 1.2.7 Persistencia 1.3. Lecturas recomendadas 1.4. Ejercicios Capitulo 2 Introducción al lenguaje Java 2.1. Introducción 2.1.1 Breve historia de Java 2.1.2 La máquina virtual de Java 2.1.3 Compiladores de Java 2.1.4 Entornos dc desarrollo para Java 2.1.5 El programación hola mundo 2.1.6 Los comentarios 2. 1.7 Juego de instrucciones 2.2. Expresiones básicas y control de fIujo 2.2.1 Tipos primitivos 2.2.2 Conversiones entre tipos primitivos 2.2.3 Operadores 2.2.4 Control de flujo 2.3. Las clases 2.3.1 Las propiedades en detalle 2.3.2 Los métodos en detalle 2.3.3 Creación de objetos 2.3.4 Destrucción de objetos 2,3.5 Bloques; de indización 2.3.6 Los modificadores de control de acceso a los miembros en detalle 2.3.7Los modificadores de uso de los miembros en detalle 2.3.8 Modificadores en. la definición de clases generales 2.3.9 Clases internas 2.3.10 Ejemplo del parking 2.3.11 Definición de arrays de objetos y de tipos primitivos 2.4. Los paquetes 2.5. Lecturas recomendadas 2.6. Ejercicios Capitulo 3 Herencia y genericidad en Java 3.1. La herencia de clases 3.1.1 Herencia en clases internas 3.1.2 Redefinición de miembros 3.1.3 La herencia y los constructores 3.2. Polimorfismo dinamico 3.2.1 El casting de referencias a objetos 3.3. Las interfaces 3.4. La genericidad 3.4.1 Clases e interfaces genéticas 3.4.2 Métodos con tipos parametrizados 3.5. Conclusiones 3.6. Lecturas recomendadas 3.7. Ejercicios Capitulo 4 El paquete java.lang 4.1. La clase Object 4.1,1 La clase ClassLouder 4.2. Clases para el manejo de cadenas de caracteres 4.3. Las excepciones 4.3.1 Tipos de excepciones 4.3.2 El uso práctico de las excepciones 4.4. Sobrecarga de los métodos basicos de object 4.4.1 Interfax Cloneable 4.4.2 Los métodos equals y hashCode 4.4.3 lnterfaz Comparable 4.5. La concurrencia 4.5.1 La palabra reservada synchronized 4.5.2 Comunicación entre hilos 4.6. Los tipos enumerados 4.7. Envolturas 4.8. Lecturas recomendadas 4.9. Ejercicios Capitulo 5 Diseño de Clases 5.1. Diseño top-down apoyado en UML 5.1.1 Relaciones de dependencia entre objetos 5.1.2 Relaciones de asociación entre objetos 5.1.3 Relaciones entre clases 5.2. Diseño dirigido por pruebas 5.2.1 Pruebas automaticas 5.2.2 Principios del diseño dirigido por pruebas 5.2.3 Objetivos y ventajas del enfoque TDD 5.3. Conclusiones 5.4. Lecturas recomendadas 5.5. Ejercicios Capitulo 6 Entrada salida en Java 6.1. Streams de bytes 6.2. Streams de caracteres 6.2.1 Streams del sistema 6.2.2 StreamsTokeniker y Scanner 6.3. Manejo de ficheros 6.4. La interfaz Serializable 6.5. Conclusiones 6.6. Ejercicios Capitulc 7 Estructuras dc datos predefinidas en Java 7.1. Collection 7.1.1 El Enumber 7.2. Map 7.3. Iteradores 7.4. La clase Collections 7.5. El resto del paquete java util 7.6. Conclusiones 7.7. Lecturas recomendadas 7.8. Ejercicios Capitulo B Patrones y principios de diseño 8.1. Principales Patrones de Diseño 8.1.1 Fabrica Abstracta (Abstract Factory 8.1.2 Adaptador o Envoltorio (Adapter\Wapper 8.1.3 Decorador (Decorator) 8.1.4 Composicion (Composite) 8.1.5 Iterador (Iterator) 8.1.6 Estrategia (Strategy) 8.1.7 Comando (Command) 8.1.8 Observador (Observer) 8.2. Algunos principios utiles en POO 8.2.1 El principio abierto—cerrado 8.2.2 E1 principio de Liskov 8.2.3 EI principio de segregación de interfaces 8.2.4 Maximizar el uso de clases inmutables 8.2.5 Preferir composición frente a herencia 8.2.6 Principio de responsabilidad juridica 8.2.7 Eliminar duplicaciones 8.2.8 Principio de inversion de dependencia 8.2.9 Preferir el polimorfismo a los bloques if/else o switch/case 8.2.10 Conclusiones 8.3. Lecturas recomendadas 8.4. Ejercicios Capitulo 9 La plataforma Java 9.1. Java Platform Standard Edition 9.1.1 JavaRuntime Environment 9.1.2 Java Development Kit (JDK) 9.2. Java Plattform Enterprise Edition 9.2.1 Capa de presentación 9.2.2 Capa de negocio 9.2.3 Capa de datos 9.3. Java Platform Micro Edition 9.3.1 Connected Limited Device Configuration 9.3.2 Connected Device Configuration 9.4. Java Card 9.5. Lecturas recomendadas Anexo A Solución de los ejercicios A.1 Ejercicios del capitulo A.1.1 Solución del ejercicio A.2 Ejercicios del capitulo A.2.1 Solución del ejercicio A.2.2 Solución del ejercicio A.2.3 Solución del ejercicio A.} Ejercicios del capitulo A.3.1 Solución del ejercicio A.3.2 Solución del ejercicio A.3.3 Solución del ejercicio A.4 Ejercicios del capitulo A.4.1 Solución del capitulo A.5 Ejercicios del capitulo A.5.I Solución del ejercicio A.5.2 Solución del ejercicio A.5.3 Solución del ejercicio A.5.4 Solución del ejercicio A.5.5 Solución del-ejercicio A.5.6 Solución del-ejercicio A.6 Ejercicios del capitulo A.6.1 Solución del ejercicio A.7 Ejercicios del capitulo A.7.1 Solución del ejercicio Anexo B Índice: alfabético N2 - El presente texto surge de varios años de experiencia docente de los autores en las asignaturas "Software Avanzado” y "Lenguajes informáticos”, que se imparten respectivamente en el tercer curso de la carrera de Ingeniería Técnica de Informática de Gestión y en el segundo curso de la carrera ingenieril Informática, en la Escuela Técnica Superior de ingeniería Informática de la Universidad Rey Juan Carlos de Madrid. El objetivo de este texto es la introducción del paradigma de la programación orientada objetos, del diserio basado en patrones, del Lenguaje Unificado de Modelado (UML) y del lenguaje de programación Java en su versión 5. Con estas bases se pretende que el lector consiga unos conocimientos teóricos en estas materias y a la vez pueda comprobar su utilidad práctica. ER -