Categorías
Java Development Tools (JDT)

Tutorial de Eclipse JDT – Modelo Java – Concepto y diseño

Este artículo pertenece a la serie de tutoriales Eclipse JDT.

¿Qué es el modelo Java?

El modelo Java es el conjunto de clases que modelan los objetos asociados con la creación, edición y construcción de un programa Java.

Está definido en el paquete org.eclipse.jdt.core. En consecuencia, las clases que no son de API se definen en el paquete org.eclipse.jdt.internal.core. Verá su relación en la siguiente sección.

En el diagrama siguiente, se muestra un proyecto simple en la vista Explorar paquete. Cada elemento se asigna a algún IJavaElement. Todas esas clases extienden directamente o no directamente la clase IJavaElement, y hay muchas otras clases distintas a las que se muestran en el diagrama. Si desea ver más, puede ir a la referencia 2 para ver toda la jerarquía.

El diseño de la manija / información

Tomemos IJavaElement, por ejemplo, ya que es el protocolo común para todos los elementos proporcionados por el modelo Java. Otros elementos de Java tienen el mismo diseño (por ejemplo, IType, IMethod, etc.). Los elementos del modelo Java se exponen a los clientes como identificadores del elemento subyacente real.

En realidad, el patrón de diseño aquí es una mezcla de Proxy y Bridge. Esos patrones no son exactamente los mismos que se definen. Puede seguir los enlaces para ver qué es una implementación canónica del patrón Proxy y Bridge.

La ventaja de este diseño:
1. El identificador (IJavaElement) es una clave para un elemento. Definen comportamientos de cada elemento, pero no guardan ninguna información de estado.
2. Un objeto de información almacena el estado del elemento. Solo hay un implementador (JavaElement) para un identificador, por lo que es un Bridge simplificado.

  Tutorial de Eclipse JDT: buscar todas las referencias de un método

* Los recursos centrales de Eclipse tienen un diseño similar.

Referencias:

1. Especificación JDT APT

2. Jerarquía para el paquete org.eclipse.jdt.core

Por Programación.Click

Más de 20 años programando en diferentes lenguajes de programación. Apasionado del code clean y el terminar lo que se empieza. ¿Programamos de verdad?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *