1. Libros
  2. 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)

  • Acceso ilimitado 24/7
  • Todos los libros online de ENI
  • Más de 5 novedades todos los meses
  • Novedades disponibles el mismo día de su publicación
  • Acceso 100% online
  • Disponible
  • Expedido en 24 horas
  • Envío gratis a partir de 25 € de compra
  • Versión online gratis por un año
  • Acceso gratuito a todos nuestros libros online durante 1 hora por toda compra
  • Consulta inmediata
  • Versión HTML online
  • Acceso ilimitado 24/7

Presentació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 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.

Índice

  • Introducción a la POO
    • 1. Historia de la POO
    • 2. Histórico del lenguaje Java
  • El diseño orientado a objetos
    • 1. Enfoque procedural y de descomposición funcional
    • 2. La transición hacia el enfoque orientado a objetos
    • 3. Las características de la POO
      • 3.1 El objeto, la clase y la referencia
        • 3.1.1 El objeto
        • 3.1.2 La clase
        • 3.1.3 La referencia
      • 3.2 La encapsulación
      • 3.3 La herencia
      • 3.4 El polimorfismo
      • 3.5 La abstracción
    • 4. El desarrollo orientado a objetos
      • 4.1 Especificaciones del software
      • 4.2 Presentación del ciclo en V
      • 4.3 Modelización y representación UML
        • 4.3.1 Los diagramas de casos de uso
        • 4.3.2 Los diagramas de clase
        • 4.3.3 Las enumeraciones
        • 4.3.4 Los diagramas de secuencia
      • 4.4 Codificación, integración y puesta en producción
    • 5. Ejercicios
      • 5.1 Jerarquía de clases
      • 5.2 Relaciones entre objetos
      • 5.3 Agregación de objetos
      • 5.4 Diagrama de casos de uso
      • 5.5 Diagrama de secuencias
  • Introducción a la plataforma Java
    • 1. Introducción
    • 2. Entorno de ejecución
    • 3. Una librería muy completa
    • 4. Las herramientas de desarrollo con buen rendimiento
    • 5. Descarga e instalación de IntelliJ IDEA
    • 6. El inevitable Hello World
    • 7. Una puntualización sobre los acrónimos
  • Los tipos en Java
    • 1. Introducción
    • 2. Los tipos primitivos
    • 3. Los tipos por referencia
    • 4. Para ayudarnos...
    • 5. La superclase java.lang.Object
      • 5.1 equals
      • 5.2 hashCode
      • 5.3 toString
      • 5.4 finalize
      • 5.5 getClass, .class y el operador instanceof
      • 5.6 clone
      • 5.7 notify, notifyAll y wait
    • 6. La clase java.lang.String
    • 7. Ejercicio
      • 7.1 Enunciado
      • 7.2 Corrección
  • Creación de clases
    • 1. Introducción
    • 2. Paquetes
    • 3. Declaración de una clase
      • 3.1 Accesibilidad de los miembros
      • 3.2 Atributos
      • 3.3 Descriptores de acceso
      • 3.4 Constructores
        • 3.4.1 Etapas de la construcción de un objeto
        • 3.4.2 Sobrecarga de constructores
        • 3.4.3 Encadenamiento de constructores
        • 3.4.4 El inicializador static
        • 3.4.5 El inicializador dinámico
        • 3.4.6 Los constructores de tipo private
        • 3.4.7 El «builder pattern»
      • 3.5 Destructores
      • 3.6 La palabra clave this
      • 3.7 Métodos
        • 3.7.1 Declaración
        • 3.7.2 Paso de argumentos por valor
      • 3.8 Sobrecarga de métodos
      • 3.9 Mecanismo de las excepciones
        • 3.9.1 Presentación
        • 3.9.2 Principio de funcionamiento de las excepciones
        • 3.9.3 Soporte de varias excepciones
      • 3.10 Ejercicio
        • 3.10.1 Enunciado
        • 3.10.2 Consejos
        • 3.10.3 Corrección
    • 4. Las interfaces
      • 4.1 Introducción
      • 4.2 El contrato
      • 4.3 Declaración de una interfaz
      • 4.4 Implementación
      • 4.5 IntelliJ IDEA y las interfaces
      • 4.6 Representación UML de una interfaz
      • 4.7 Interfaces y polimorfismo
      • 4.8 Ejercicio
        • 4.8.1 Enunciado
        • 4.8.2 Consejos
        • 4.8.3 Corrección
      • 4.9 Las interfaces de la máquina virtual Java
    • 5. Asociaciones, composiciones y agregaciones
      • 5.1 Las tablas
      • 5.2 Las colecciones
        • 5.2.1 ArrayList<E> y LinkedList<E>
        • 5.2.2 Queue<T> y Stack<T>
        • 5.2.3 HashMap<K, V>
        • 5.2.4 Los iteradores
      • 5.3 Ejercicio
        • 5.3.1 Enunciado
        • 5.3.2 Corrección
    • 6. Las clases anidadas
    • 7. Algunas diferencias con C#
  • Herencia y polimorfismo
    • 1. Entender la herencia
    • 2. Codificación de la superclase (clase de base)y de su subclase (clase heredada)
      • 2.1 Prohibir la herencia
      • 2.2 Definir los miembros heredables
      • 2.3 Sintaxis de la herencia
      • 2.4 Explotación de una clase heredada
    • 3. Comunicación entre clase de base y clase heredada
      • 3.1 Los constructores
      • 3.2 Acceso a los miembros de la clase de base desde el heredado
      • 3.3 Métodos virtuales
      • 3.4 Métodos de tipo «final»
    • 4. Ejercicio
      • 4.1 Enunciado
      • 4.2 Corrección
    • 5. Las clases abstractas
    • 6. El polimorfismo
      • 6.1 Entender el polimorfismo
      • 6.2 Explotación del polimorfismo
      • 6.3 Los operadores instanceof y ()
  • Comunicación entre objetos
    • 1. El evento: estar a la escucha
    • 2. El pattern Observador
      • 2.1 Aspectos generales
      • 2.2 Implementación en lenguaje Java
      • 2.3 Los listeners
      • 2.4 Utilización de un listener en una aplicación gráfica
    • 3. Ejercicios
      • 3.1 Ejercicio 1
        • 3.1.1 Enunciado
        • 3.1.2 Corrección
      • 3.2 Ejercicio 2
        • 3.2.1 Enunciado
        • 3.2.2 Corrección
    • 4. Llamadas síncronas y asíncronas
  • El multithreading
    • 1. Introducción
    • 2. Entender el multithreading
    • 3. Multithreading y Java
    • 4. Implementación de los threads en Java
      • 4.1 Extender la clase Thread
      • 4.2 Implementar la interfaz Runnable
      • 4.3 Dormirse y esperar
      • 4.4 Abandono desde el thread primario
      • 4.5 Threads y clases anónimas
        • 4.5.1 Con la interfaz Runnable
        • 4.5.2 Con la clase Thread
        • 4.5.3 Acceso simplificado a las variables y datos miembro
    • 5. Sincronización entre threads
      • 5.1 Necesidad de la sincronización
      • 5.2 Los métodos «syncronized»
      • 5.3 Las operaciones «syncronized»
      • 5.4 La clase Semaphore
    • 6. Comunicación interthreads
      • 6.1 El método join
      • 6.2 Los objetos de sincronización
    • 7. Ejercicio
      • 7.1 Enunciado
      • 7.2 Corrección
  • Las pruebas
    • 1. Introducción
    • 2. Entorno de ejecución de las pruebas unitarias
    • 3. El proyecto con pruebas unitarias
    • 4. La clase de pruebas
    • 5. Contenido de un método de prueba
    • 6. Operaciones de preparación y limpieza
    • 7. Las pruebas con argumentos externos
    • 8. Las suites de pruebas
    • 9. Ejercicio
      • 9.1 Enunciado
      • 9.2 Corrección
  • La reflexión
    • 1. Introducción
    • 2. Pero ¿ para qué hacerlo ?
    • 3. Introspección de una clase Java
    • 4. Carga dinámica y utilización de una clase descubierta
    • 5. Ejercicio
    • 6. Privado, pero no tanto...
    • 7. Decompilación y ofuscación
    • índice

Autor

Luc GERVAISMás información

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).

Características

  • Nivel Medio a Experto
  • Número de páginas 387 páginas
  • Publicación abril 2019
    • Encuadernación rústica - 17 x 21 cm
    • ISBN: 978-2-409-01929-6
    • EAN: 9782409019296
    • Ref. ENI: RIT2JAPOO
  • Nivel Medio a Experto
  • Publicación abril 2019
    • HTML
    • ISBN: 978-2-409-01930-2
    • EAN: 9782409019302
    • Ref. ENI: LNRIT2JAPOO

Descargas

Al completar este formulario, acepta recibir información y comunicaciones comerciales sobre nuestros productos y servicios. Puede darse de baja de nuestra newsletter en cualquier momento. Si desea conocer más información acerca de nuestra política de protección de datos, pulse aquí.
  • Des fichiers complémentaires (633 Ko)