Delphi (software) - Delphi (software)

Delphi
Embarcadero Delphi 10.4 Sydney Product Logo and Icon.svg
Captura de pantalla de Delphi 10.4 IDE con VCL Designer y Dark Theme.png
Captura de pantalla de Delphi 10.4, con el editor de formularios visuales que se utiliza para crear una aplicación
Autor (es) original (es) Borland , CodeGear , Embarcadero
Desarrollador (es) Tecnologías Embarcadero
Lanzamiento estable
RAD Studio 11 Alexandria  Edita esto en Wikidata / 9 de septiembre de 2021 ; Hace 11 dias ( 9 de septiembre de 2021 )
Escrito en Mayormente Delphi (Object Pascal)
Sistema operativo Se ejecuta en Windows 10 dianas Windows 10 , Linux , macOS , Android , y iOS
Escribe Desarrollo de software , diseñador , IDE , compilador y RTL
Licencia Freemium
Sitio web embarcadero .com / productos / delphi

Delphi es un producto de software que utiliza el dialecto Delphi del lenguaje de programación Object Pascal y proporciona un entorno de desarrollo integrado (IDE) para el desarrollo rápido de aplicaciones de software de escritorio, móviles , web y de consola , actualmente desarrollado y mantenido por Embarcadero Technologies .

Los compiladores de Delphi generan código nativo para Microsoft Windows , macOS , iOS , Android y Linux ( x64 ).

Delphi incluye un editor de código, un diseñador visual, un depurador integrado, un componente de control de código fuente y soporte para complementos de terceros . El editor de código incluye Code Insight ( finalización del código ), Error Insight (comprobación de errores en tiempo real) y refactorización . El diseñador de formularios visuales tiene la opción de utilizar la Biblioteca de componentes visuales (VCL) para el desarrollo puro de Windows o el marco FireMonkey (FMX) para el desarrollo multiplataforma. El soporte de la base de datos es una característica clave y lo proporciona FireDAC (Componentes de acceso a la base de datos). Delphi es conocido por su rápida velocidad de compilación, código nativo y productividad del desarrollador.

Borland desarrolló originalmente Delphi como una herramienta de desarrollo rápido de aplicaciones para Windows como sucesor de Turbo Pascal . Delphi agregó programación orientada a objetos completa al lenguaje existente, y el lenguaje ha crecido para admitir genéricos, métodos anónimos , cierres y compatibilidad nativa con el modelo de objetos componentes (COM).

Delphi y su contraparte C ++ , C ++ Builder , son interoperables y se venden conjuntamente bajo el nombre RAD Studio. Hay ediciones Professional, Enterprise y Architect, y las ediciones superiores tienen más funciones a un precio más alto. También hay una edición comunitaria gratuita, con la mayoría de las funciones de Professional, pero restringida a usuarios y empresas con bajos ingresos.

Características

Delphi admite el desarrollo rápido de aplicaciones (RAD). Las características destacadas son un diseñador visual y dos marcos de aplicaciones , VCL para Windows y FireMonkey (FMX) para el desarrollo multiplataforma.

Delphi utiliza el lenguaje de programación basado en Pascal Object Pascal creado por Anders Hejlsberg para Borland (ahora IDERA) como sucesor de Turbo Pascal. Es compatible con la compilación cruzada nativa para muchas plataformas, incluidas Windows, Linux, iOS y Android.

Para respaldar mejor el desarrollo para Microsoft Windows e interoperar con código desarrollado con otras herramientas de desarrollo de software, Delphi admite interfaces independientes de Component Object Model (COM) con implementaciones de clases contadas de referencia y compatibilidad con muchos componentes de terceros. Las implementaciones de interfaz se pueden delegar a campos o propiedades de clases. Los manejadores de mensajes se implementan etiquetando un método de una clase con la constante entera del mensaje a manejar.

La conectividad de la base de datos es ampliamente compatible a través de componentes de acceso a la base de datos y con reconocimiento de base de datos VCL.

Las versiones posteriores han incluido rutinas de biblioteca de tiempo de ejecución mejoradas y actualizadas, algunas proporcionadas por el grupo comunitario FastCode .

Caracteristicas

Delphi utiliza un lenguaje de programación de alto nivel fuertemente tipado , destinado a ser fácil de usar y originalmente basado en el lenguaje Object Pascal anterior. Pascal fue desarrollado originalmente como un lenguaje de propósito general "adecuado para expresar las construcciones fundamentales conocidas en ese momento de una manera concisa y lógica", y "su implementación debía ser eficiente y competitiva con los compiladores FORTRAN existentes" pero sin programación de bajo nivel. instalaciones o acceso a hardware. Turbo Pascal y sus descendientes, incluido Delphi, admiten el acceso al hardware y la programación de bajo nivel, con la posibilidad de incorporar código escrito en lenguaje ensamblador y otros lenguajes. La orientación a objetos de Delphi presenta solo polimorfismo basado en clases e interfaces . Las metaclases son objetos de primera clase. Los objetos son en realidad referencias a los objetos (como en Java ), que Delphi desreferencia implícitamente, por lo que generalmente no es necesario asignar memoria manualmente para punteros a objetos o usar técnicas similares que necesitan otros lenguajes. Hay tipos de cadenas dedicadas contadas por referencias y también cadenas terminadas en nulo.

Las cadenas se pueden concatenar usando el operador '+', en lugar de usar funciones. Para tipos de cadenas dedicadas, Delphi maneja la gestión de la memoria sin la intervención del programador. Desde Borland Developer Studio 2006 existen funciones para localizar pérdidas de memoria .

Delphi incluye un IDE integrado. Todos los productos Delphi se envían con una biblioteca en tiempo de ejecución (RTL) y una biblioteca de componentes visuales (VCL), incluida la mayor parte de su código fuente. Los componentes de terceros (a veces con el código fuente completo ) y las herramientas para mejorar el IDE o para otras tareas de desarrollo relacionadas con Delphi están disponibles, algunos de forma gratuita. El IDE incluye una GUI para la localización y traducción de programas creados que se pueden implementar en un traductor; También existen herramientas de terceros con más funciones para este propósito. El marco VCL mantiene un alto nivel de compatibilidad de fuentes entre versiones, lo que simplifica la actualización del código fuente existente a una versión más nueva de Delphi. Las bibliotecas de terceros normalmente necesitan actualizaciones del proveedor pero, si se proporciona el código fuente, la recopilación con la versión más reciente puede ser suficiente. El VCL fue uno de los primeros en adoptar la inyección de dependencia o la inversión del control ; utiliza un modelo de componente reutilizable, extensible por el desarrollador. Con los ayudantes de clase, se pueden introducir nuevas funciones en las clases principales de RTL y VCL sin cambiar el código fuente original de RTL o VCL.

El compilador está optimizando y de un solo paso. Opcionalmente, se puede compilar en un solo ejecutable que no requiere DLL . Delphi también puede generar archivos DLL estándar, archivos DLL ActiveX , servidores de automatización COM y servicios de Windows .

Los IDE de Delphi desde Delphi 2005 admiten cada vez más características de refactorización como la extracción de métodos y la posibilidad de crear modelos UML a partir del código fuente o modificar la fuente a través de cambios realizados en el modelo.

Delphi tiene comunidades en la web , donde también participan activamente sus empleados.

Compatibilidad con versiones anteriores

Delphi es uno de los lenguajes donde la compatibilidad con versiones anteriores es cercana al 100%. Aunque cada nueva versión de Delphi intenta mantener la mayor compatibilidad con versiones anteriores para permitir la reutilización del código existente, las nuevas funciones, las nuevas bibliotecas y las mejoras a veces hacen que las versiones más nuevas sean menos del 100% compatibles con versiones anteriores.

Desde 2016, ha habido nuevas versiones de Delphi cada seis meses, con nuevas plataformas que se agregan aproximadamente cada segunda versión.

Frameworks

Delphi ofrece dos marcos para el desarrollo de aplicaciones visuales, VCL y FireMonkey (FMX):

  • Visual Component Library (VCL) es el marco para desarrollar aplicaciones de Windows puras. VCL es un marco de trabajo de larga data, incluido en la primera versión de Delphi y desarrollado activamente desde entonces.
  • FireMonkey (más tarde abreviado FMX), se lanzó en 2011, como parte de Delphi XE2, junto con un conjunto adicional de compiladores integrados para plataformas que no son de Windows. FireMonkey es un marco multiplataforma para Windows, macOS, iOS, Android y Linux (x64). Las partes de la GUI de FireMonkey se basan principalmente en Direct3D y OpenGL. FireMonkey no es compatible con VCL; son dos marcos separados. Sin embargo, las aplicaciones de FireMonkey permiten compartir fácilmente unidades de código no visual con aplicaciones VCL, lo que permite portar o compartir fácilmente una gran cantidad de código entre las plataformas.

Interoperabilidad

Delphi y su contraparte C ++ , C ++ Builder , son interoperables. Comparten muchos componentes centrales, en particular el IDE, los marcos VCL y FMX, y gran parte de la biblioteca en tiempo de ejecución . Además, se pueden utilizar conjuntamente en un proyecto. Por ejemplo, C ++ Builder 6 y posteriores pueden combinar el código fuente de Delphi y C ++ en un proyecto, mientras que los paquetes compilados con C ++ Builder se pueden utilizar desde Delphi. En 2007, los productos se lanzaron conjuntamente como RAD Studio, un host compartido para Delphi y C ++ Builder, que se puede comprar con uno o ambos. Comenzando con Rio, también existe interoperabilidad con Python.

Historia

Hojas de ruta

Embarcadero publica "hojas de ruta" que describen sus planes de desarrollo futuros. El más reciente se publicó en noviembre de 2020.

Software relacionado

  • Borland Enterprise Studio, un precursor de RAD Studio, es una suite de desarrollo de software que incluye soporte para múltiples idiomas. Borland Enterprise Studio para Windows es compatible con Delphi.
  • Borland Kylix : Similar a Delphi, pero para Linux, lanzado en 2001. Este fue el primer intento de agregar soporte para Linux en la familia de productos Delphi. Kylix utilizó el nuevo marco multiplataforma CLX (basado en QT), en lugar del VCL de Delphi. Kylix se suspendió después de la versión 3. Hoy en día, el soporte de Linux está integrado en el producto principal de Delphi y utiliza el marco de plataforma cruzada de FireMonkey.
  • InterBase es una base de datos SQL incrustable que se integra de forma nativa a Delphi y C ++ Builder para desarrollo cliente / servidor o incrustado. Sus características distintivas reducen los requisitos de administración, seguridad de datos de nivel comercial, recuperación ante desastres y sincronización de cambios. También es accesible para los principales lenguajes y plataformas del mercado con protocolos de conexión de bases de datos como ODBC, ADO, ADO.NET e incluso con Java mediante conectores JDBC / ODBC Bridge o Java tipo 4.
  • JBuilder fue una herramienta para el desarrollo de Java basada en Eclipse desde la versión JBuilder 2007.
  • RadPHP (luego reemplazado por HTML5 Builder) era un IDE para PHP que proporcionaba una verdadera funcionalidad RAD. Tiene un diseñador de formularios similar al de Delphi o Visual Basic , y un depurador integrado basado en el servidor web Apache . También incluye una biblioteca VCL portada a PHP. A diferencia de otros IDE, admite funciones Web 2.0 como AJAX . Delphi para PHP se anunció el 20 de marzo de 2007, se renombró en octubre de 2010 a RadPHP y se basa en Qadram Q studio. Embarcadero adquirió Qadram en enero de 2011.
  • Delphi Prism (más tarde conocido como Embarcadero Prism) derivado del lenguaje de programación Oxygene (anteriormente conocido como Chrome) de RemObjects. Se ejecutó en el IDE de Microsoft Visual Studio en lugar de RAD Studio. Embarcadero lo autorizó y lo renombró para reemplazar a Delphi.NET cuando ese producto fue descontinuado.
  • Free Pascal es un compilador multiplataforma de Pascal de código abierto que admite la mayor parte del código Object Pascal de Delphi. Free Pascal también tiene sus propias extensiones de lenguaje, múltiples modos de compilador [sintaxis de lenguaje] y soporta más de 18 sistemas operativos y más de 9 arquitecturas de procesador. Lazarus es un RAD IDE multiplataforma que utiliza el compilador Free Pascal.

Bibliotecas de terceros notables

Referencias

Otras lecturas

enlaces externos