La mayoría de mis libros son en Linea, y hasta ahora muy digeribles en cuestión de contenido y ejercicios
Ramon H- Libros
- Aprender la Programación Orientada a Objetos con el lenguaje Java - (con ejercicios prácticos y corregidos)
Aprender la Programación Orientada a Objetos con el lenguaje Java (con ejercicios prácticos y corregidos)
1 opinión
Este libro se dirige a los estudiantes y desarrolladores que hayan tenido previamente una primera experiencia con la programación estructurada y que deseen pasar a la Programación Orientada a Objetos (POO) con el lenguaje Java, para desarrollar aplicaciones portables.
Después de una breve historia de la POO y del lenguaje Java, el autor explica por qué este tipo de programación se ha convertido en algo imprescindible para...
Consultar extractos del libro
Extracto del libro
- Nivel Medio a Experto
- Número de páginas 387 páginas
- Publicación abril 2019
- Nivel Medio a Experto
- Publicación abril 2019
Este libro se dirige a los estudiantes y desarrolladores que hayan tenido previamente una primera experiencia con la programación estructurada y que deseen pasar a la Programación Orientada a Objetos (POO) con el lenguaje Java, para desarrollar aplicaciones portables.
Después de una breve historia de la POO y del lenguaje Java, el autor explica por qué este tipo de programación se ha convertido en algo imprescindible para desarrollar en los entornos gráficos orientados a eventos. Se presentan las nociones de objeto, clase y referencia, para pasar a los fundamentos de la POO, que son la encapsulación, la herencia, el polimorfismo y la abstracción. También se exponen las diferentes etapas de un desarrollo orientado a objetos, con los principios de la modelización UML.
Posteriormente, el autor presenta la máquina virtual Java, su interés, riqueza y un entorno de desarrollo con IntelliJ IDEA de la empresa JetBrains. El lector descubrirá cómo Java reproduce los principios de la POO, siguiendo unas sencillas explicaciones, con unos ejemplos concretos y realizando ejercicios de entrenamiento. También descubrirá los tipos básicos del desarrollo Java y su utilización, cómo explotar un IDE para simplificar la escritura de los programas y ponerlos a punto. Los programas de prueba son de tipo consola o gráficos, basados en la utilización de Swing para ilustrar las comunicaciones entre objetos. Cuando es pertinente, se exponen en paralelo códigos con los lenguajes de programación orientados a objetos C++ y C#. Se presenta la programación multithread, que permite la ejecución simultánea de varios flujos de instrucciones, seguido de una introducción a las pruebas unitarias tan importantes para asegurar la fiabilidad de los objetos. Para terminar, el último capítulo se dedica a la reflexión en Java, que promete algunas sorpresas.
Al terminar este libro, el lector dispondrá de unas sólidas bases para aprender los potentes API Java y realizar programas orientados a objetos modulares, fiables y extensibles.
Hay disponibles elementos adicionales, que se pueden descargar desde el sitio web www.ediciones-eni.com.
Después de una breve historia de la POO y del lenguaje Java, el autor explica por qué este tipo de programación se ha convertido en algo imprescindible para desarrollar en los entornos gráficos orientados a eventos. Se presentan las nociones de objeto, clase y referencia, para pasar a los fundamentos de la POO, que son la encapsulación, la herencia, el polimorfismo y la abstracción. También se exponen las diferentes etapas de un desarrollo orientado a objetos, con los principios de la modelización UML.
Posteriormente, el autor presenta la máquina virtual Java, su interés, riqueza y un entorno de desarrollo con IntelliJ IDEA de la empresa JetBrains. El lector descubrirá cómo Java reproduce los principios de la POO, siguiendo unas sencillas explicaciones, con unos ejemplos concretos y realizando ejercicios de entrenamiento. También descubrirá los tipos básicos del desarrollo Java y su utilización, cómo explotar un IDE para simplificar la escritura de los programas y ponerlos a punto. Los programas de prueba son de tipo consola o gráficos, basados en la utilización de Swing para ilustrar las comunicaciones entre objetos. Cuando es pertinente, se exponen en paralelo códigos con los lenguajes de programación orientados a objetos C++ y C#. Se presenta la programación multithread, que permite la ejecución simultánea de varios flujos de instrucciones, seguido de una introducción a las pruebas unitarias tan importantes para asegurar la fiabilidad de los objetos. Para terminar, el último capítulo se dedica a la reflexión en Java, que promete algunas sorpresas.
Al terminar este libro, el lector dispondrá de unas sólidas bases para aprender los potentes API Java y realizar programas orientados a objetos modulares, fiables y extensibles.
Hay disponibles elementos adicionales, que se pueden descargar desde el sitio web www.ediciones-eni.com.
Descargas
Prólogo
- Introducción
Introducción a la POO
- Historia de la POO
- Histórico del lenguaje Java
El diseño orientado a objetos
- Enfoque procedural y de descomposición funcional
- La transición hacia el enfoque orientado a objetos
- Las características de la POO
- 1. El objeto, la clase y la referencia
- a. El objeto
- b. La clase
- c. La referencia
- 1. El objeto, la clase y la referencia
- 2. La encapsulación
- 3. La herencia
- 4. El polimorfismo
- 5. La abstracción
- 1. Especificaciones del software
- 2. Presentación del ciclo en V
- 3. Modelización y representación UML
- a. Los diagramas de casos de uso
- b. Los diagramas de clase
- c. Las enumeraciones
- d. Los diagramas de secuencia
- 1. Jerarquía de clases
- 2. Relaciones entre objetos
- 3. Agregación de objetos
- 4. Diagrama de casos de uso
- 5. Diagrama de secuencias
Introducción a la plataforma Java
- Introducción
- Entorno de ejecución
- Una librería muy completa
- Las herramientas de desarrollo con buen rendimiento
- Descarga e instalación de IntelliJ IDEA
- El inevitable Hello World
- Una puntualización sobre los acrónimos
Los tipos en Java
- Introducción
- Los tipos primitivos
- Los tipos por referencia
- Para ayudarnos...
- La superclase java.lang.Object
- 1. equals
- 2. hashCode
- 3. toString
- 4. finalize
- 5. getClass, .class y el operador instanceof
- 6. clone
- 7. notify, notifyAll y wait
- La clase java.lang.String
- Ejercicio
- 1. Enunciado
- 2. Corrección
Creación de clases
- Introducción
- Paquetes
- Declaración de una clase
- 1. Accesibilidad de los miembros
- 2. Atributos
- 3. Descriptores de acceso
- 4. Constructores
- a. Etapas de la construcción de un objeto
- b. Sobrecarga de constructores
- c. Encadenamiento de constructores
- d. El inicializador static
- e. El inicializador dinámico
- f. Los constructores de tipo private
- g. El «builder pattern»
- 5. Destructores
- 6. La palabra clave this
- 7. Métodos
- a. Declaración
- b. Paso de argumentos por valor
- 8. Sobrecarga de métodos
- 9. Mecanismo de las excepciones
- a. Presentación
- b. Principio de funcionamiento de las excepciones
- c. Soporte de varias excepciones
- 10. Ejercicio
- a. Enunciado
- b. Consejos
- c. Corrección
- 1. Introducción
- 2. El contrato
- 3. Declaración de una interfaz
- 4. Implementación
- 5. IntelliJ IDEA y las interfaces
- 6. Representación UML de una interfaz
- 7. Interfaces y polimorfismo
- 8. Ejercicio
- a. Enunciado
- b. Consejos
- c. Corrección
- 1. Las tablas
- 2. Las colecciones
- a. ArrayList<e> y LinkedList<e></e></e>
- b. Queue<t> y Stack<t></t></t>
- c. HashMap<k, v=""></k,>
- d. Los iteradores
- a. Enunciado
- b. Corrección
Herencia y polimorfismo
- Entender la herencia
- Codificación de la superclase (clase de base) y de su subclase (clase heredada)
- 1. Prohibir la herencia
- 2. Definir los miembros heredables
- 3. Sintaxis de la herencia
- 4. Explotación de una clase heredada
- Comunicación entre clase de base y clase heredada
- 1. Los constructores
- 2. Acceso a los miembros de la clase de base desde elheredado
- 3. Métodos virtuales
- 4. Métodos de tipo «final»
- Ejercicio
- 1. Enunciado
- 2. Corrección
- Las clases abstractas
- El polimorfismo
- 1. Entender el polimorfismo
- 2. Explotación del polimorfismo
- 3. Los operadores instanceof y ()
Comunicación entre objetos
- El evento: estar a la escucha
- El pattern Observador
- 1. Aspectos generales
- 2. Implementación en lenguaje Java
- 3. Los listeners
- 4. Utilización de un listener en una aplicacióngráfica
- Ejercicios
- 1. Ejercicio 1
- a. Enunciado
- b. Corrección
- 1. Ejercicio 1
- 2. Ejercicio 2
- a. Enunciado
- b. Corrección
El multithreading
- Introducción
- Entender el multithreading
- Multithreading y Java
- Implementación de los threads en Java
- 1. Extender la clase Thread
- 2. Implementar la interfaz Runnable
- 3. Dormirse y esperar
- 4. Abandono desde el thread primario
- 5. Threads y clases anónimas
- a. Con la interfaz Runnable
- b. Con la clase Thread
- c. Acceso simplificado a las variables y datos miembro
- 1. Necesidad de la sincronización
- 2. Los métodos «syncronized»
- 3. Las operaciones «syncronized»
- 4. La clase Semaphore
- 1. El método join
- 2. Los objetos de sincronización
- 1. Enunciado
- 2. Corrección
Las pruebas
- Introducción
- Entorno de ejecución de las pruebas unitarias
- El proyecto con pruebas unitarias
- La clase de pruebas
- Contenido de un método de prueba
- Operaciones de preparación y limpieza
- Las pruebas con argumentos externos
- Las suites de pruebas
- Ejercicio
- 1. Enunciado
- 2. Corrección
La reflexión
- Introducción
- Pero ¿para qué hacerlo?
- Introspección de una clase Java
- Carga dinámica y utilización de una clase descubierta
- Ejercicio
- Privado, pero no tanto...
- Decompilación y ofuscación
Luc GERVAIS
Desde hace veinticinco años, Luc Gervais ejerce la profesión de desarrollador de software. Provenía del mundo de la electrónica y empezó a programar en lenguaje ensamblador para pasar posteriormente a C, C++, C# y Java. Ha impartido muchas sesiones de formación sobre estos diferentes lenguajes de programación, tanto para un público formado por desarrolladores profesionales, como por estudiantes (Universidad de Rouen). Esta doble experiencia (técnica y pedagógica), le permite responder perfectamente a las expectativas de los lectores que deseen pasar a la Programación Orientada a Objetos (POO).
Más información