cerrar-sesion editar-perfil marker video calendario monitor periodico fax rss twitter facebook google-plus linkedin alarma circulo-derecha abajo derecha izquierda mover-vertical candado usuario email lupa exito mapa email2 telefono etiqueta

Delphi 2009. a�?A?QuA� hay de nuevo viejo?a�?

Escrito por Redacción en Reportajes
no hay comentarios Haz tu comentario
Imagen de logotipo de facebook Imagen de logotipo de Twitter Imagen de Logotipo de Google+ Imagen de logotipo de Linkedin

Muchas cosas son necesarias hoy en dA�a para desarrollar aplicaciones y mucho hemos cambiado a la hora de hacerlo. Si hacemos un ejercicio de memoria, hace tan sA?lo 10 aA�os nuestros desarrollos estaban pensados para aplicaciones escritorio, trabajando sobre bases de datos basadas en ficheros, por ejemplo Paradox o dBase. En el mejor de los casos creA?bamos aplicaciones cliente/servidor basadas en las primeras bases de datos SQL, como Interbase, Oracle, Sysbase, SQL Server, etca��

Hoy en dA�a nuestras aplicaciones responden a arquitecturas mucho mA?s complejas, funcionan en diferentes paA�ses y los objetos de negocio son cada vez mA?s complejos y ambiciosos. Por tanto los sistemas de programaciA?n tienen que responder a estas expectativas.

Grandes cambios

Delphi 2007 ya nos planteaba las bases de estos nuevos servicios en un entorno de desarrollo nativo para Win32 cuando anunciaba su nueva arquitectura de base de datos DBX4, pero Delphi 2009 va mA?s allA? retomando una antigua tecnologA�a DataSnap y mA?s allA? de darle una vuelta de tuerca, la reconstruye abandonando antiguos patrones de desarrollo como COM y estilizA?ndola, haciA�ndola mA?s ligera y sencilla de manejar. AdemA?s nos facilita la internacionalizaciA?n de las aplicaciones migrando definitivamente el entorno y la VCL a Unicode. Por A?ltimo y debido a la nueva asociaciA?n con Embarcadero las licencias Arquitech contienen una copia de ER/Studio Developer, para el modelado de bases de datos.

DataSnap

DataSnap fue durante muchas versiones de Delphi, en concreto desde la 3 en adelante, una tecnologA�a que de una manera sencilla permitA�a el desarrollo de aplicaciones en mA?ltiples capas fA�sicas utilizando DCOM. Para entendernos, construir aplicaciones con aplicaciA?n cliente y aplicaciA?n servidora era sencillo. No tenA�amos que conocer las profundidades de CORBA o DCOM, y nos permitA�a trabajar sobre TCP o incluso SOAP, imitando servicios web.

Este modelo sigue estando disponible tal cual estaba, ya que siguen estando disponibles las clases TRemoteDataModule y TDataSetProvider asA� como el interfaz IAppServer, pero ahora se ha desarrollado otro soporte construido sobre la tecnologA�a de drivers delegados de DBX4 que convierte esta tecnologA�a en independiente de DCOM y mucho mA?s ligera. Este soporte permite la creaciA?n de mA�todos remotos en aplicaciones servidoras invocables del mismo modo que se harA�a con los procedimientos almacenados de una base de datos, o incluso la creaciA?n de clases a�?proxya�? en cliente para el consumo de las aplicaciones servidoras. Es como dice su creador Steven Shaughnessy una tecnologA�a general de remoting (Figura 1).

Unicode

La codificaciA?n de los tipos de cadena es uno de los quebraderos de cabeza que nos podemos encontrar hoy en dA�a en los sistemas de programaciA?n. Las aplicaciones no solo se estA?n construyendo para ser utilizadas en diferentes entornos idiomA?ticos, lo que a veces tambiA�n incluyen diferentes alfabetos, sino que aunque solo tengamos soporte para un idioma a veces los objetos de negocio nos obligan a utilizar simbologA�a y alfabetos diferentes, por ejemplo la explosiA?n del comercio con China.

Ya Delphi 2007 incluA�a el soporte de Unicode en el tratamiento de base de datos pero Delphi 2009 lo estandariza tanto en el IDE como en los tipos. Ahora los Strings son Unicode pero se siguen manteniendo los tipos ansi, como el AnsiString o el AnsiChar. Debido a esto todas las clases de la RTL y la VCL tambiA�n soportan Unicode, a diferencia de lo que ocurriA? con la inclusiA?n de los tipos Wide, WideString y WideChar. AdemA?s se incluyen multitud de nuevas clases y funciones que dan soporte a esta caracterA�stica como TEncoding o TCharacter (Figura 2).

Modelado

Otra de las A?reas en que Delphi viene haciendo incidencia desde hace tiempo es el modelado visual. En Delphi 6 ya podA�amos encontrar unas A?reas de dibujo asociadas a las unidades donde esquematizar nuestros diseA�os. Bold, Together, LiveSource, han sido los continuadores de una tendencia que cada vez se impone mA?s en conjunciA?n con el aumento de la complejidad en el desarrollo, el trabajo visual con herramientas que sean capaces de traducir modelos UML en cA?digo. Hasta ahora y con excepciA?n hecha de ECO, tecnologA�a exclusiva para .NET, las posibilidades de incluir esta forma trabajar aplicadas a base datos eran inexistentes.

ER/Studio era una herramienta conocida en el A?mbito del desarrollo de base de datos por su potencia y versatilidad, con ella podremos crear modelos lA?gicos de bases de datos e implementarlos creado los modelos fA�sicos, aplicar estA?ndares como pata de gallo, modelar visualmente, crear dominios, estimar crecimientos, documentar, etc. En definitiva todos los mecanismos que nos permiten trabajar con modelos de bases de datos con ingenierA�a directa o inversa y sobre modelos dimensionales o de almacA�n (Figura 3).

PequeA�os grandes cambios

En este apartado discutiremos acerca de otros cambios que incluye Delphi 2009, que no me atrevo a calificar de pequeA�os, porque uno nunca sabe lo que vendrA? despuA�s, solo hay que mirar a DBX4.

Tipos genA�ricos y mA�todos anA?nimos

Como nuevas caracterA�sticas del lenguaje tenemos los tipos genA�ricos y los mA�todos anA?nimos. Los primeros son tipos, generalmente de colecciA?n, donde el tipo de la unidad de dicha colecciA?n se parametriza, esto es podemos crear tipo pila y definirlo solo una vez pero luego poderlo usar con colecciones de enteros, cadenas o cualquier otra cosa sin necesidad de estar constantemente convirtiendo entre tipos. Los mA�todos anA?nimos son solo una manera de especificar mA�todos y funciones en lA�nea. Con este subterfugio sintA?ctico no ahorramos declaraciones al tiempo que prometen ser el soporte programA?tico de caracterA�stica futuras en Delphi.

IDE

En cuanto al IDE se ha mejorado el explorador de clases, convirtiA�ndolo en algo mA?s parecido a un navegador, que ademA?s permite filtrar, buscar e incluso declarar nuevas clases y miembros en A�l. La inclusiA?n del MSBuild en 2007 permite ahora que Delphi nos permita la declaraciA?n y administraciA?n de perfiles de compilaciA?n por proyecto que se suman a los eventos y demA?s caracterA�sticas antes disponibles, incluyendo tambiA�n la jerarquizaciA?n y herencia de dichos perfiles. El gestor de proyectos tambiA�n ha experimentado nuevas modificaciones, ademA?s de soportar diferentes vistas nos permite tratar los recursos como elementos del proyecto realizando las invocaciones necesarias su posterior tratamiento (Figura 4).

TambiA�n se ha mejorado el soporte para la programaciA?n COM, simplificA?ndola e incluyendo nuevas herramientas. Se ha mejorado el compilador incluyendo nuevas advertencias. Se ha extendido la implementaciA?n de la clase TObject incluyendo nuevos mA�todos asA� como cantidad de nuevas modificaciones en clases de la VCL.

TambiA�n se han desarrollado nuevos controles, entre los que destaca la nueva TRibbon que permitirA? aportar a nuestras aplicaciones un aspecto muy similar a la de Office 2007 (Figura 5).

Conclusiones

Si en el tA�tulo parafraseA?bamos a un conocido dibujo animado, lo hacA�amos intentando describir el hecho de que Delphi 2009 provoca un regusto muy similar al que produjeron versiones de hace unos aA�os, de producto robusto con decenas de modificaciones y optimizaciones que pretenden hacernos la vida mA?s fA?cil al tiempo que mA?s productiva, podrA�amos por tanto terminar parafraseando a otro dibujo animado y diciendo: a�?esto es toa�� esto es toa�� esto es todo amigosa�? pero no sA� por quA� tengo la sensaciA?n de que esto no es todo, ni mucho menosa�� i??

Luis Alfonso Rey, Technical product Manager, Delphi 2009, Danysoft. sp@danysoft.com


Enlaces de InterA�s

a�� Delphi 2009 http://www.codegear.com/products/delphi/win32

a�� Delphi Prism (Delphi for .NET con Mono) http://www.codegear.com/products/delphi/prism.

a�� Delphi for PHP http://www.codegear.com/products/delphi/php

a�� ArtA�culos y mA?s informaciA?n en castellano www.danysoft.com 

Etiquetas

Noticias relacionadas

Comentarios

No hay comentarios.

Deja un comentario

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

Debes haber iniciado sesión para comentar una noticia.