martes, 18 de marzo de 2014

ADF Bindings 3/3

Resumen: En esta entrada se mostrará la estructura y el papel que tiene ADF Bindings dentro de la arquitectura ADF.

Para terminar con esta introducción a ADF Bindings, podemos ir a la documentación oficial de ADF, para ver lo que nos dice.

Nota: Se podría haber empezado por aquí, pero he preferido ver los ADF Bindings
en acción en vez de presentarlo como algo abstracto.

Como habíamos visto en otro post dedicado a la arquitectura de ADF, ésta se separa en distintas áreas: Vista Modelo y Controlador (view, model y controller, MVC).

arquitectura ADF
Arquitectura de ADF


Como hemos visto en el ejemplo de estos artículos dedicados a ADF Bindings (artículo 1, artículo), los Bindings gestionan la información que muestra la página, y por lo tanto, estaría colocado dentro de la capa : Model (si seguimos el modelo MVC).
En la imagen que tenemos, ADF Bindings se encontraría dentro de la capa ADF Model.

En el artículo del manual de referencia de 10g (en el de 11g también hay un texto similar encontramos lo siguiente) declarative Data Binding with Oracle ADF Model Layer donde se habla de dos mecanismos data controls y declarative bindings:

Data controls abstract the implementation technology of a business service by using standard metadata interfaces to describe the service’s operations and data collections, including information about the properties, methods, and types involved. At design time, visual tools like JDeveloper can leverage the standard service metadata to simplify binding UI components to any datacontrol operation or data collection.

Si miramos a nuestro DataControl Palette, y vemos lo que nos ofrece, podemos ver con claridad, que nos está proporcionando una forma de acceder a los datos, propiedades, métodos, de elementos que fueron creados ( ADF Business Components, en el esquema anterior de la arquitectura ADF).


Al arrastrar un elemento del Data Control Palette, se nos mostraba un menú contextual en el que se nos solicitaba la forma en que se iba a mostrar los datos.
Esta “forma de mostrar” los datos, es lo que se refiere con UI Components (User Interface Components), y por lo tanto, a la parte visual de la página.

incluir componente desde datacontrol palette
añadiendo un componente desde DataControlPalette

En este mismo artículo se habla de sus ventajas:

- Escribir menos código
- Trabajar de la misma manera que cualquier otro elemento de UI o de Business service (homongeneidad)
- Disponer de características que sería difíciles de obtener si las tuviéramos que codificar.

Estas características las hemos visto en los ejemplos que hemos utilizado en este blog, por lo que nos suena todo ello.

La otra parte que se refiere dicho artículo es a lo que estábamos hablando comúnmente como Bindings,

Declarative bindings abstract the details of accessing data from data collections in a
data control and of invoking its operations.

Es decir, que nos permite manejar colecciones de datos de un data control, e invocar sus operaciones.

vista pagina definicion
página de Definición

Existen tres tipos de objetos que manejan esta parte:
Iterator bindings to bind to an iterator that tracks the current row in a data
collection
Value bindings to connect UI components to attributes in a data collection
Action bindings to invoke custom or built-it operations on a data control or its
data collections
De estos tres tipos de objetos, en el ejemplo podemos ver dos de ellos, el iterator (iterador), y el Action (acción, método, función).

Veremos más adelante cada uno de estos tres elementos, su papel y cómo funcionan con ejemplos prácticos.

La idea de este post es:
- Tener una imagen clara de dónde está el ADF Bindings en la arquitectura ADF
- Saber lo que nos permite hacer y no hacer
- Familiarizarse con algunos términos para que cuando vayamos a leer otros blogs o bibliografía podamos entenderlo con cierta claridad.

Otros artículos relacionados:
- ADF Bindings 2/3
- ADF Bindings (1/3)
- Arquitectura ADF

No hay comentarios:

Publicar un comentario