¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Desarrollo informático
  3. Programación objeto
Extrait - Desarrollo informático Aprenda a diseñar antes de programar
Extractos del libro
Desarrollo informático Aprenda a diseñar antes de programar Volver a la página de compra del libro

Programación objeto - Java: presentación

El lenguaje Java

1. Histórico

Java se ha desarrollado por Sun Microsystems en 1991.

Se trataba de desarrollar un lenguaje de programación que permitiera controlar los aparatos electrónicos. Por lo tanto, Java debía ser un lenguaje con buen rendimiento y fácil de portar para una amplia gama de dispositivos.

2. Las características principales

a. La portabilidad

La compilación clásica

Cuando se compila un programa escrito en C o en la mayor parte de los otros lenguajes, el compilador traduce el archivo fuente a código máquina (instrucciones específicas del procesador que su ordenador utiliza). Si compila el código fuente en un ordenador que se basa en un procesador, el programa resultante solo funcionará en otros ordenadores que se basen en el mismo procesador.

Para utilizar el mismo programa en otra plataforma, hay que transferir el código fuente a la nueva plataforma y volver a compilarlo para producir código máquina específico para este sistema.

images/201-1.png

La compilación Java

images/201-2.png

El compilador Java genera un pseudocódigo independiente de la plataforma de desarrollo. La máquina virtual, que depende del procesador, interpreta este pseudocódigo.

Observamos que, en este sistema, hay que tener obligatoriamente una máquina virtual Java (JVM) para cada una de las plataformas utilizadas. Es el caso para la mayor parte de los sistemas operativos...

Los objetivos del curso de Java - Java EE

1. La programación orientada a objetos - Java

a. Los aspectos básicos de la programación orientada a objetos en Java

Dominar los aspectos básicos del lenguaje Java.

Diseñar y desarrollar aplicaciones usando los principios de la programación orientada a objetos.

b. La programación gráfica - MVC

Desarrollar aplicaciones gráficas en Swing.

Estructurar un programa respetando el modelo MVC.

c. Las bases de datos relacionales - JDBC

Desarrollar aplicaciones que accedan a una base de datos relacional.

Desarrollar una capa de acceso a los datos (Data Access Object).

Desarrollar las clases que permiten garantizar el mapping objeto/relación.

d. La programación en red - Arquitectura 3 tiers

Diseñar y desarrollar un servidor de objetos serializados.

Diseñar y desarrollar un servidor XML.

Desarrollar aplicaciones clientes para estos servidores.

2. Java EE

a. La programación web

Diseñar y desarrollar aplicaciones web escritas en Java, usando servlets y JSP.

b. Los EJB

Diseñar y desarrollar aplicaciones que utilizan Enterprise Java Beans 3 (objetos remotos).

Diseñar arquitecturas 3 tiers y 4 tiers.

El capítulo Objetos remotos - RMI - EJB contiene un ejemplo de acceso a los objetos remotos con RMI (Java SE).

Las arquitecturas desarrolladas

1. 2 tiers cliente pesado

images/201-3.png

Una aplicación gráfica desarrollada en Java se comunica con un servidor de base de datos. 

2. 3 tiers cliente pesado

images/201-4.png

Una aplicación gráfica desarrollada en Java se comunica con un servidor de aplicaciones desarrollado en Java. El cliente envía una consulta SQL al servidor, que devuelve objetos Java serializados.

El servidor de aplicaciones se comunica con un servidor de base de datos.

3. 3 tiers cliente pesado (XML)

images/201-5.png

Una aplicación gráfica desarrollada en Java se comunica con un servidor de aplicaciones desarrollado en Java. El cliente envía una consulta SQL al servidor, que devuelve un flujo XML.

El servidor de aplicaciones se comunica con un servidor de base de datos.

4. 3 tiers cliente pesado (objetos remotos)

images/201-6.png

Una aplicación Java se comunica con un servidor de objetos remotos.

El servidor de objetos remotos se comunica con un servidor de base de datos.

5. 3 tiers cliente ligero

images/201-7.png

Una aplicación gráfica desarrollada en HTML se comunica con el contenedor web de un servidor Java EE.

El contenedor web del servidor Java EE se comunica con un servidor de base de datos.

6. 3 tiers cliente pesado

images/201-8.png

Una aplicación gráfica desarrollada en Java se comunica con el contenedor de EJB de un servidor Java EE.

El contenedor de EJB del servidor Java EE se comunica con un servidor de base de datos. 

7. 4 tiers cliente ligero

images/201-9.png

Una aplicación...

Organización de los directorios para las aplicaciones Java y Java EE

  • El directorio Cursos contiene los ejemplos de cursos Java Standard Edition.

  • El directorio CursosJavaEE contiene los ejemplos de cursos Java Enterprise Edition.

  • El directorio TP contiene los ejemplos de trabajos prácticos Java Standard Edition.

  • El directorio TPJavaEE contiene los ejemplos de trabajos prácticos Java Enterprise Edition.

  • El directorio Herramientas contiene dos subdirectorios:

  • HerramientasMG contiene las herramientas generales utilizadas en el libro. Estos programas se pueden utilizar para cualquier aplicación Java.

  • HerramientasVarios contiene las herramientas específicas de las aplicaciones del libro.

HerramientasMG es el nombre del directorio que contiene las clases para las herramientas desarrolladas por el autor, cuyas iniciales son MG. Perdón por esta personalización.

images/201-10.png

Esta organización, utilizada para el libro, es un ejemplo.

Las herramientas: paquetes HerramientasMG y HerramientasVarios

Los directorios HerramientasMG y HerramientasVarios contienen los paquetes que agrupan numerosas clases útiles para los desarrollos. Estas clases se presentan o se desarrollan a medida que se necesitan para las aplicaciones del libro.

1. HerramientasMG: lista de las clases de herramientas

Los paquetes de este directorio se pueden utilizar en cualquier aplicación Java. Completan a los paquetes de Java SE y Java EE para facilitar los desarrollos.

En negrita: el nombre del paquete

  • En tipografía normal, en forma de lista: las clases

Los paquetes cuyo nombre comienzan por herramientasMG.grafico contienen las clases que facilitan los desarrollos gráficos en Swing.

herramientasMG.grafico

  • EscuchaVentana

  • FlowLayoutMG

  • LF

herramientasMG.grafico.ventanainterna

  • DesktopManagerMG

  • JDesktopPaneMG

  • JScrollPaneMG

herramientasMG.grafico.tabla

  • AbstractRenderCelda

  • Editor

  • EditorBigDecimal

  • EditorDate

  • EditorDouble

  • EditorFloat

  • EditorInteger

  • EditorLong

  • EditorObject

  • FilasComparator

  • ModeloColumnaTabla

  • ModeloTabla

  • RenderBigDecimal

  • RenderBoolean

  • RenderDate

  • RenderDouble

  • RenderFloat

  • RenderInteger

  • RenderLong

  • RenderObject

herramientasMG.grafico.texto

  • DocumentEntradaLimitada

El paquete herramientasMG.varios contiene algunas clases de herramientas diversas.

herramientasMG.varios

  • Teclado

  • Columna

  • Conversion

  • CreacionObjeto

  • FechaEs

  • Archivo

  • OrdenacionBurbujaTabla

El paquete herramientasMG.jdbc contiene algunas clases que facilitan...