Ventajas de Visual Dataflex


Ventajas de Visual DataFlex

 

Documento de Peter Donovan con fecha 10 de Septiembre del  2007 http://applausesoftware.blogspot.com/

En este artículo se pretende mostrar las posibilidades de VDF en relación a otras herramientas de desarrollo del mercado que en este documento le llamaremos VBZ. Se presentan las opiniones de Peter Donovan por si pudieran ser de interés a alguno de los lectores.

 

Dilema: ¿debo reescribir mi sistema en VDF o VBZ?

 

Visual DataFlex (VDF)

La ventaja principal de VDF es la velocidad de desarrollo. Sobre un sistema que maneja gran cantidad de datos, VBZ probablemente requerirá el doble de tiempo de codificación.

Un ejemplo de esto está en el tratamiento de errores. En VBZ el tratamiento de errores debe ser codificado manualmente.

Otro ejemplo de prestaciones estándar de VDF son los mensajes de búsqueda. Todo el código necesario para  buscar el primero o el último registro está completamente soportado y codificado por VDF en métodos, que son modificables y disponibles a nivel de objeto y de la clase Diccionario de Datos (DataDictionary)

 

Visión general

VDF está diseñado de una forma estándar para un entorno cognoscitivo de datos (es data aware)  mientras VBZ no lo está.

Segundo, VDF está en completa armonía con sus datos y código base actual.

Al cambiar de Dataflex a VDF podemos aprovechar con garantías su código, lo que nos permitirá pasarlo de una forma casi intacta a un sistema de VDF de OOPS sin reinventar la rueda.

Una migración de DataFlex a VDF también tiene la ventaja de poder ser ejecutado simultáneamente por ambos sistemas. Puede hacer desaparecer progresivamente el sistema antiguo en lugar de hacerlo de una sola vez. Puede usar las mismas tablas de datos simultáneamente en Dataflex y VDF hasta que la conversión está completa, y una vez finalizada la migración cambiar a una solución cliente-servidor sin cambiar código.

VDF es un gran procesador frontal para muchas bases de datos: DataFlex, Pervasive, MySQL, DB2, Oracle, y MS SQL Server por ejemplo. El mismo código funcionará, indistintamente de la base de datos escogida.


VDF tiene unos 30 años de historia como lenguaje de desarrollo diseñado para trabajar con datos. Como añadido, VBZ  tiene la capacidad de almacenar información. ¡Las 2  primeras versiones de VBZ no eran conscientes de la base de datos (database aware)!

VDF tiene una huella ligera. Sistemas complicados pueden correr aceptablemente bien en ordenadores con más de 5 años. VBZ.net necesita ordenadores de última generación para que los usuarios consigan un rendimiento razonable.

VDF está realmente Orientado a Objeto. Este tipo de programación hace el desarrollo más rápido, más limpio y más fácil de mantener a lo largo del camino. VBZ está "Basado en Objetos" – un implementación parcial del concepto de OOP. Una parte de OOP son las "Clases". Éstas admiten extensiones flexibles de los controles que son usados para visualizar datos.

Por ejemplo, suponga que usted quiere colorear todos campos que forman parte de un índice (y por lo tanto pueden ser usados para búsquedas de registros). En la clase añada el código necesario para hacer esto, recompile y ahora cada instancia de cada campo que es parte de un índice estará coloreado. En VBZ, este cambio podría llevar semanas, buscando cada control y añadiéndole el código.

Otra ventaja muy importante de esto es la centralización de código. Si, por ejemplo, quisiera cambiar el color de  los controles asignado a los campos de un índice en VDF lo puede hacer cambiando código en un único sitio centralizado, dando gran potencia a su código y al mismo tiempo hacer que las tareas de mantenimiento sean un abrir y cerrar de ojos en vez de una tarea inmensa.

VDF tiene diccionarios de datos (DD). Los DDs son posiblemente la parte más potente de VDF. Todas las “reglas de negocio” y gran parte del código personalizado van ahí..

¿la ventaja? Como un ejemplo muy básico, supongamos que quiere siempre el nombre del cliente puesto en mayúsculas. Ajuste esto en el DD de la tabla de clientes. A partir de entonces, cada vista, diálogo, etc. que use el DD de la tabla de clientes pondrá siempre el nombre del cliente en  mayúsculas.

Dos años más tarde decide admitir la minúscula. Vaya al DD, cámbielo allí y recompile la aplicación. A partir de ese momento en cada sitio que utilice el nombre del cliente (no importar si es en 1 lugar o en 100) admitirá la minúscula.

 

VDF tiene interconectado el diccionario de la base de datos

En una aplicación de VDF, la base de datos está codificada (como en el ejemplo de arriba) con reglas de la empresa básicas y avanzadas; ejemplo: la tabla del cliente tiene una regla asociada que dice que el este no puede sobrepasar su límite de crédito; así, cuando combine los DDs del cliente, con el del pedido y con el de líneas de  pedido, esto es lo que se obtiene:

Cliente

   

Pedido

   

Línea pedido

Ahora, cuando se grabe una línea de detalle nueva las comprobaciones de las grabaciones en cascada hacia arriba (de la línea de detalle al cliente) hace que sea denegado cualquier intento de grabar una línea de detalle que haga que el limite de crédito del cliente sea superado!

 

VDF tiene características de interfaz que lo hacen mucho más fácil para el usuario

Consultas: éstos son listas emergentes (al clic de un botón o a la pulsación de una tecla) diseñadas para facilitar búsquedas de registros. Por ejemplo, para buscar un pedido se  podría mostrar el número del pedido, la fecha, cliente, destinatario, el total y el estado. ¡Los usuarios pueden ver el lo que necesitan para hacer su trabajo eficientemente!

Indización: cuando se le presente un pedido, deberá situarse en el campo “número de pedido” y así podrá avanzar y retroceder registros por número de pedido; si se sitúa en la fecha del pedido podrá avanzar y retroceder registros de forma cronológica: no hará falta ninguna programación (excepto crear los índices).

 

La interfaz de VDF está diseñada y pensada para la introducción de datos

MDI (Multiple Document Interface) es el estándar para las aplicación de VDF es. Esto permite que el usuario tenga 2, 3 o más visualizaciones de datos abiertas a la vez (vistas, diálogos, informes, …), pero la aplicación puede ser minimizada con un solo clic. También pone menús y barra de herramientas en la parte superior de la aplicación de forma que no tengan que ser añadidas a cada vista de forma individual.

Si sus usuarios prefieren navegar de campo a campo con la tecla <Intro> (en lugar del tabulador)  añada una línea de código, recompile y ya está.

Cada acción que se puede hacer con el ratón también se puede hacer con una tecla o  combinación de teclas. Esto posibilita la introducción de datos de una forma rápida y ágil por usuarios experimentados mientras que permite el uso del ratón para los usuarios que lo prefieran teniendo de esta forma lo mejor de los dos mundos.

En VDF destaca la compatibilidad entre diferentes versiones. Una aplicación escrita en la versión 9.1 compilará y se ejecutará en la 12.0 (5 versiones más) con pocos o ningún cambio en el código.

VDF es pionero en unir los Aplicaciones de Windows con aplicaciones de Web. Una aplicación VDF WebApp puede trabajar fácilmente con la misma base de datos (¡incluyendo los diccionarios de datos!) que usa su sistema Windows.

 

Este documento en PDF