| Artículos | 01 JUL 1997

Borland Delphi 3.0

Tags: Histórico
Programa visual de desarrollo de aplicaciones Windows
Jaime Peña.

La nueva versión Delphi 3.0 extiende su integración con Internet y tiende un puente de cooperación con el potente Borland C++Builder.

Hace ya algo más de un par de años, aparecía Borland Delphi como un nuevo enfoque de la programación visual. Muchos quisieron ver en él un heredero del mítico Turbo Pascal; otros percibieron rápidamente que, aun basándose en el lenguaje Object Pascal, suponía algo revolucionario. Su versión 1.0, para Win16, significó un gran éxito comercial, que fue capaz de dar un fuerte tirón de la situación, más que comprometida, en la que se encontraba Borland. Más tarde, Delphi 2.0, ya para Win32, aseguró el mercado y, sin las nieblas con que se vio la versión inicial, fue reconocido como una excelente herramienta de desarrollo corporativo, muy bien diseñada para programación general y, también, en el área más avanzada de los entornos cliente/servidor.

La presente versión 3.0 ya es un producto afianzado, que procura una madurez definitiva y su afianzamiento en las áreas más novedosas de la programación, como los controles ActiveX, Internet y mejoras sustanciales en aplicaciones cliente/servidor. Si añadimos que puede compartir componentes con Borland C++Builder, tiene todas las bazas para situarse en la cima de prestaciones entre los programadores profesionales. Sólo falta que Borland asegure su situación financiera que, a nuestro entender, supone el único inconveniente serio para que Delphi alcance un estado de herramienta corporativa muy atractiva. Tal vez, la más atractiva en la actualidad.

Como ya es habitual, Borland Delphi 3.0 se vende en tres versiones: Standard, Professional y Client/Server Suite. La primera es el punto de entrada, tiene la misma potencia básica que las restantes (su núcleo de bibliotecas, componentes básicos y compilación es el mismo); la segunda dispone de todo el potencial añadido para la conexión a bases de datos no corporativas y desarrollos bajo la tecnología ActiveX; por último, la Client/Server Suite está enfocada, a mayores, al desarrollo de aplicaciones corporativas, para acceso a bases de datos distribuidas.

Entorno de desarrollo

El aspecto general del entorno de desarrollo o IDE (Integrated Development Environment) no ha cambiado sustancialmente, pero sí contiene importantes mejoras en el modo de trabajar con él. En lo referente al aspecto, encontrará los nuevos botones activos (se resaltan al pasar el puntero del ratón sobre ellos), que se presentaron con Microsoft Internet Explorer y Microsoft Office 97. Otra novedad es la disposición de la ventana de mensajes, que ahora no está separada de la de edición de código. Durante la edición de código, si se detectan errores de algún tipo, aparecerá una nueva ventana de mensajes separada por una barra de la ventana de edición de código de cada unidad, que también se utiliza durante la compilación para enviar mensajes de error y sugerencias acerca de uso de variables, por ejemplo.

Otra novedad muy útil es la verificación sintáctica del código. En muchas ocasiones le servirá como predepurador, antes de realizar compilaciones y ahorrará con ello tediosas labores de compilación-error-corrección, ya que el procedimiento es muy rápido. Imagínese que actúa como lo haría un corrector ortográfico en un procesador de textos, pero enfocado a la sintaxis de código en el editor correspondiente. Por supuesto, se trata de un verificador rápido, que no detecta posibles problemas en tiempo de ejecución, sólo repasa el código fuente, comprobando la concordancia de declaraciones de funciones y variables.

Los denominados Code Insight Wizards simplificados, para acelerar la creación de código, actúan de manera que crean maquetas de estructuras de control (if..then...else y otras), o sugieren posibles eventos, propiedades, variables o procedimientos, válidos para un código iniciado. No dudamos de su extremo valor y, sobre todo, de la posibilidad de personalización. Sin embargo nos han parecido algo menos automáticos que los correspondientes de Visual Basic 5, aunque aquellos son menos flexibles y personalizables. Resumiendo, la potencia y libertad de acción juegan a favor del enfoque dado en Delphi 3, la simplicidad para un uso inmediato, a favor de lo proporcionado en Visual Basic 5.

Para facilitar la escritura de código se incluye un asistente (CodeCompletion Wizard) que completa la escritura de códigos, sin más que introducir los primeros caracteres inequívocos y pulsando una combinación de teclas. Otro asistente despliega unas ventanas flotantes (al estilo de los ToolTips de botones de la barra de herramientas) que exponen la sintaxis y orden de parámetros correcto para funciones, procedimientos, eventos y métodos de componentes. Además, una combinación de teclas nos permite escoger en una caja de listas qué variable o constante (de componentes, de usuario o del API de Windows), o propiedad es sintácticamente correcto que se incluya en la posición en que estamos escribiendo código.

Código, lenguaje y depuración

El módulo de lenguaje de Delphi permanece inalterado en la práctica; bien es cierto que se ha incluido una extensión para manejar caracteres de doble byte, pero eso sólo interesará para lenguajes asiáticos y semejantes. Por contra hay toda una parafernalia de nuevas posibilidades de escritura asistida, plantillas, trabajo con paquetes precompilados y nuevas opciones de depuración.

Las plantillas de código (Code Templates) tienen una relación directa con el sistema Code Insight Wizards que hemos comentado más arriba. Los usuarios pueden definir plantillas de código todo lo sofisticadas que deseen, de manera que existe un editor para tal efecto, con una indicación de dónde se situará el cursor de textos para completarlo. Esas plantillas se incluyen en el editor de igual forma que las predeterminadas en Delphi 3.

Las plantillas de componentes (Component Templates) suponen un paso más allá de las plantillas de código. En esta ocasión, una vez diseñada una disposición y comportamiento de componentes, pueden seleccionarse y guardarse como plantilla. Posteriormente se recuperan en la ventana de diseño de nuestras aplicaciones. Así, será mucho más sencillo elaborar formularios con apariencia consistente entre todos ellos. Las plantillas de componentes pueden intercambiarse entre diversos proyectos, por lo que es ideal para crear bibliotecas de funciones comunes; todo un ejemplo de la reutilización de código.

Los paquetes de componentes (Packages) satisfacen una de las demandas más importantes que los programadores hacían a Delphi 2.0. Ahora toda la biblioteca de componentes visuales (VCL) de Delphi 3 se basa en los paquetes, que permiten incluir los componentes de Delphi y otros que hayamos instalado o programado, en una biblioteca de enlace dinámico (DLL), lo que reduce drásticamente el tamaño del ejecutable final, ya que no se insertará de cada vez todo el código compilado en el archivo EXE.

Hay una diferencia sustancial entre los paquetes y los run-times, ya que podremos especificar qué parte irá en una DLL y qué parte irá insertada en el EXE. Es decir, se logra un control personalizado del balance entre tamaño del EXE y la DLL, según convenga para cada aplicación, o más normalmente, para cada grupo de aplicaciones. Los paquetes son, en realidad, units de Delphi, no código compilado estándar que pueda usarse en cualquier otro compilador.

Esta tecnología, denominada Ultra-thin exe's, ejecutables ultra finos (con el mínimo de código inserto en el archivo compilado), pasa a ser la base de trabajo para aplicaciones que han de ser transferidas a través de redes iNet (Internet o Intranets). Su aplicación va desde componentes activos, controles ActiveX y formularios activos, hasta aplicaciones cliente-servidor en entornos corporativos. Los ejecutables compilados, como comentamos anteriormente, pueden ahora seleccionar qué p

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información