WikiWebDesign
Advertisement
Delphi3-4-6

Paquete del Delphi.

Delphi es un entorno de desarrollo rápido de software diseñado para la programación de propósito general con enfásis en la programación visual. En Delphi se utiliza como lenguaje de programación una version moderna de Pascal llamada Object Pascal. Es producido comercialmente por la empresa estadounidense Borland. En sus diferentes variantes, permite producir archivos ejecutables para Windows, GNU/Linux y la plataforma .NET.

En la actualidad, Borland parece haber decidido vender Delphi [1].

Uso y variantes[]

El principal uso de Delphi es para el desarrollo de aplicaciones visuales y de bases de datos cliente-servidor y multicapas. Debido a que es una herramienta de propósito múltiple, se usa también para proyectos de casi cualquier tipo, incluyendo aplicaciones de consola, CGI y servicios del sistema operativo.

Delphi inicialmente sólo producía ejecutables binarios para Windows (Win16 y Win32). En la actualidad da más posibilidades:

  • En la última versión Delphi 2006 incluye en el mismo entorno de desarrollo los lenguajes:
  • Delphi para Win32,
  • Delphi para .NET, y
  • C# para .NET.
  • Existe una versión de Delphi para sistemas Unix y Linux, denominada Kylix (de la cual existe un versión gratuita, aunque limitada). Sin embargo Kylix fue abandonada por Borland en su versión 3.0.

El lenguaje de programación[]

Delphi está basado en una versión moderna de Pascal, denominada Object Pascal, que expande las funcionalidades del primero:

  • Soporte para la programación orientada a objetos (habitualmente llamada POO) también existente desde Turbo Pascal 5, pero mucho mas evolucionada, en cuanto a:
    • Objetos en sí: clases, instancias, etc.
    • Encapsulación: declarando partes privadas, protegidas, públicas y publicadas de las clases
    • Propiedades: concepto nuevo que luego han adaptado muchos otros lenguajes.
    • Herencia simple y Polimorfismo.
  • Soporte para excepciones, mejorando sensiblemente el manejo de errores de usuario y del sistema.
  • Programación manejada por eventos (event-driven), posible gracias a las ya mencionadas propiedades de los objetos.

Componentes[]

Delphi introdujo la idea del uso de componentes, que son piezas reutilizables de código (clases) que pueden interactuar con el EID en tiempo de diseño y desempeñar una función específica en tiempo de ejecución. Desde un enfoque más técnico, se catalogan como componentes todos aquellos objetos que heredan desde la clase TComponent. Una gran parte de los componentes disponibles para Delphi son controles (derivados de TControl), que encapsulan los elementos de interacción con el usuario (botones, menus, barras de desplazamiento, etc).

Delphi incluye una biblioteca de clases bien diseñada denominada VCL (Visual Component Library, Biblioteca de Componentes Visuales) y, en sus versiones 6 y 7, una jerarquia multiplataforma paralela denominada CLX. Ésta también se incluye en Kylix. Estas jerarquías de objetos incluyen componentes visuales y no visuales, tales como los pertenecientes a la categoría de acceso a datos, con los que puede establecerse conexiones de forma nativa o mediante capas intermedias (como ADO, BDE u ODBC) a la mayoría de las bases de datos relacionales existentes en el mercado. La VCL también está disponible para el desarrollo en .NET.

Además de poder utilizar en un programa estos componentes estándar (botones, grillas, conjuntos de datos, etc.), es posible crear nuevos componentes o mejorar los ya existentes, extiendiendo la funcionalidad de la herramienta. En Internet existe un gran número de componentes, tanto gratuitos como comerciales, disponibles para los proyectos a los que no les basten los que vienen ya con la herramienta.

Eventos[]

Delphi permite de manera sencilla ejecutar trozos de código en respuesta a acciones o eventos (sucesos) que ocurren durante el tiempo que un programa se ejecuta. Por ejemplo, cuando se presiona un botón, la VCL captura la notificación estándar de windows, y detecta si hay algún método asociado al evento OnClick del botón. Si lo hay, manda ejecutar dicho método.

Los eventos pueden generarse debido a la recepción de señales desde elementos de hardware como el ratón o el teclado, o pueden producirse al realizar alguna operación sobre un elemento de la propia aplicación (como abrir un conjunto de datos, que genera los eventos BeforeOpen/AfterOpen). La VCL ha demostrado estar bien diseñada y el control que se tiene a través de los eventos de la misma es suficiente para la gran mayoría de aplicaciones.

Base de Datos[]

Una de las principales características y ventajas de delphi es su capacidad para desarrollar aplicaciones con conectividad a bases de datos de diferentes fabricantes. El programador de Delphi cuenta con una gran cantidad de componentes para realizar la conexión, manipulación, presentación y captura de los datos, algunos de ellos liberados bajo licencias de código abierto o gratuitos. Estos componentes de acceso a datos pueden enlazarse a una gran variedad de controles visuales, aprovechando las características del lenguaje orientado a objetos, gracias al polimorfismo.

En la paleta de componentes pueden encontrarse varias pestañas para realizar una conexión a bases de datos usando diferentes capas o motores de conexión.

Hay motores que permiten conectarse a bases de datos de diferentes fabricantes tales como BDE, DBExpress o ADO, que cuentan con manejadores para los formatos mas extendidos.

También hay motores de conexión a alguna base de datos específica, como Interbase u Oracle.

A continuación un breve resumen (aún recopilandose) de las capas de conexión disponibles para las bases de datos mas populares:

  • Interbase/Firebird: IBX (InterBase eXpress), IBO (IB Objects), MDO (Mercury Data Objects), *DBExpress, BDE
  • Oracle: DOA (Direct Oracle Access), NCOci8
  • dBase: BDE
  • FoxPro: BDE
  • Paradox: BDE
  • MS-SQL: BDE, ADO
  • mySQL: Zeos (nativo), BDE y ADO (usando ODBC)

Borland Database Engine (BDE)[]

Es un motor de conexión a bases de datos de uso bastante amplio y que permite manejar bases de datos de escritorio como dBase, Foxpro y Paradox, además de ofrecer la capacidad para conectarse a servidores SQL locales y remotos.

Desarrollo visual[]

Como entorno visual, la programación en Delphi consiste en diseñar los formularios que componen al programa colocando todos sus controles (botones, etiquetas, campos de texto, etc.) en las posiciones deseadas, normalmente usando un ratón. Luego se asocia código a los eventos de dichos controles y también se pueden crear módulos de datos, que regularmente contienen los componentes de acceso a datos y las reglas de negocio de una aplicación.

Entorno Integrado de Desarrollo (EID)[]

Delphi6 snapshot

Captura de pantalla de Delphi 6

O IDE en inglés (Integrated Development Environment), es el ambiente de desarrollo de programas de Delphi. Se trata de un editor de formularios (que permite el desarrollo visual), un potente editor de textos que resalta la sintaxis del código fuente, la paleta de componentes y el depurador integrado, además de una barra de botones y un menú que nos permite la configuración de la herramienta y la gestión de proyectos. En las ediciones Client/Server y Enterprise el EID también ofrece integración con una herramienta de control de versiones (PVCS).

Depurador integrado[]

Es una potente característica que nos permite establecer puntos de ruptura (breakpoints), la ejecución paso a paso de un programa, el seguimiento de los valores de las variables y de la pila de ejecución, así como la evaluación de expresiones con datos de la ejecución del programa. Con su uso, un programador experimentado puede detectar y resolver errores lógicos en el funcionamiento de un aplicativo desarrollado con Delphi. En las ediciones Client/Server y Enterprise se añade la opción de depuración a programas corriendo en equipos remotos (remote debugging), lo que posibilita el uso de todas las características del depurador con un programa ejecutandose en su entorno normal de trabajo y no en el ordenador del programador (en donde muchas veces no ocurren los errores).

Proyectos alternativos[]

Existen desarrollos de la comunidad del software libre que intentan producir una versión multiplataforma y completamente libre de Delphi. La más desarrollada es el llamado Lazarus.

El nombre Delphi[]

El nombre Delphi hace referencia al oráculo de Delfos. Borland eligió ese nombre para resaltar su principal mejora con respecto a su antecesor (Turbo Pascal), que sería su conectividad con bases de datos Oracle (oráculo, en inglés). El nombre se suele pronunciar delfi en los países de habla hispana. En inglés, aunque también se usa la antedicha, la que predomina es delfai (es la preferida por Borland).

Enlaces externos[]


Este artículos en otros idiomas Información en otros proyectos
Inglés Wikibooks | Wikipedia (es) | Wikipedia (en)
Otras wikis relacionadas Artículos en otras wikis
Delphi
Advertisement