Ícono del sitio Embarcadero RAD Studio, Delphi, & C++Builder Blogs

Delphi ofrece una integración de API de herramientas de terceros más profunda que WPF y Electron

wp1 tool extension

¿Cómo funcionan Delphi, WPF .NET Framework y Electron en comparación entre sí, y cuál es la mejor manera de hacer una comparación objetiva? Embarcadero encargó un documento técnico para investigar las diferencias entre Delphi, WPF .NET Framework y Electron para crear aplicaciones de escritorio de Windows. La aplicación de referencia, un clon de la Calculadora de Windows 10, fue recreada en cada marco por tres voluntarios de Delphi Most Valuable Professionals (MVP), un desarrollador experto independiente de WPF y un desarrollador experto independiente Electron. En esta publicación de blog, vamos a explorar la métrica de extensión de herramientas, que es parte de la comparación de funciones utilizada en el documento técnico.

¿Cómo se pueden comparar las extensiones de herramientas?

¿Se puede ampliar el marco en su propio idioma? Los marcos que requieren que los complementos, extensiones o modificaciones se escriban en un idioma diferente imponen costos a las empresas que requieren una funcionalidad alterada. En lugar de crear la herramienta necesaria a partir del conocimiento de los residentes, es posible que las empresas deban invertir tiempo y recursos para contratar a un contratista externo o desarrollar habilidades internas en ese idioma alternativo.

Delphi se envía con software de prueba y también brinda a las empresas la oportunidad de desarrollar herramientas y extensiones para el marco utilizando el mismo talento que construye su producto (el IDE de Delphi está programado en Delphi). WPF ofrece bibliotecas de prueba a través de Visual Studio, y las empresas pueden disfrutar del gran entorno de extensiones y herramientas de terceros, pero es posible que necesiten subcontratar el trabajo para crear sus propias extensiones o invertir en talento para idiomas que no son de WPF. Electron carece de un IDE nativo, lo que brinda a las empresas una opción, pero también elimina algunas comodidades como la compilación integrada y las bibliotecas de prueba incluidas. Las empresas que desarrollan herramientas internas tendrían más dificultades con Electron que con los otros marcos.

Echemos un vistazo a cada marco.

¿Qué capacidades de extensión de herramientas están disponibles para Delphi?

El IDE de RAD Studio para Delphi está escrito en Delphi. Los usuarios pueden crear sus propias extensiones y herramientas en Delphi, eliminando la necesidad de aprender un nuevo idioma y manejar los problemas de los límites del idioma. Además, se pueden crear extensiones y herramientas en C ++ a través del lado C ++ Builder de RAD Studio.

RAD Studio tiene una potente API que le permite ampliar o modificar el comportamiento del IDE. Cree un paquete o complemento DLL que agregue nuevas ventanas de herramientas, dibuje en el editor de código, proporcione finalización de código, agregue nuevos tipos de proyectos, tipos de archivos y resaltado, se enganche en eventos de alto y bajo nivel, rastree procesos y subprocesos durante la depuración , y más.

Existe un rico ecosistema de complementos de código abierto y cerrado. Hay varios complementos disponibles directamente a través de Embarcadero GetIt en el IDE .

El siguiente es un extracto del documento técnico Ampliación del IDE de Delphi de Bruno Fierens y Embarcadero.

¿Cuál es la arquitectura básica de la API IDE de Delphi?

La API se basa en gran medida en interfaces. Las interfaces suelen comenzar con el prefijo IOTA o INTA. El IDE expone una gran cantidad de interfaces que se pueden llamar desde el complemento; a la inversa, el propio IDE también puede llamar al código del complemento cuando se activa una acción específica en el IDE. Para informar al IDE que el complemento tiene un controlador para estas acciones, en la mayoría de los casos, esto se hace escribiendo una clase que desciende de TNotifierObject que implementa una interfaz y registra la clase con el IDE. Como escritor de complementos, se encontrará principalmente escribiendo código que llama a las interfaces IDE y escribiendo clases que implementan interfaces que serán llamadas desde el IDE.

¿Qué áreas de RAD Studio IDE se pueden ampliar?

El IDE de Delphi se puede ampliar de muchas formas. Esta es una breve descripción general de las áreas más comunes de extensión del IDE:

Aquí también hay un video destacado de Sprint de habilidades para desarrolladores titulado Desarrollando complementos en RAD Studio :

Varias extensiones populares para RAD Studio incluyen:

¿Qué capacidades de extensión de herramientas están disponibles para WPF .NET Framework?

Visual Studio, el IDE nativo de WPF, se puede ampliar de varias formas y en varios idiomas. Las macros se escriben en Visual Basic, los complementos se escriben en .NET y los paquetes se pueden escribir en .NET, C #, C ++ o Visual Basic. Debido a que WPF está escrito en XAML y se vincula con un back-end lógico de C #, es posible que las empresas no tengan experiencia interna para crear las herramientas que necesitan para mejorar sus entornos de desarrollo sin subcontratar el trabajo o invertir en capacitación.

Según Microsoft, Visual Studio permite ampliar “menús, barras de herramientas, comandos, ventanas, soluciones, proyectos, editores, etc.” Además, enumera los siguientes elementos comunes que se pueden ampliar.

Obtenga más información sobre la ampliación de Visual Studio aquí:
https://docs.microsoft.com/en-us/visualstudio/extensibility/starting-to-develop-visual-studio-extensions?view=vs-2019

¿Qué capacidades de extensión de herramientas están disponibles para Electron?

Electron carece de un IDE nativo, pero puede usar complementos disponibles en IDE como Visual Studio Code. Es posible que las herramientas Electron adicionales deban desarrollarse internamente desde cero o integrarse con una herramienta de terceros como Visual Studio Code. Hay una gran cantidad de proyectos de código abierto en torno a las herramientas y la funcionalidad de Electron.

Un editor popular utilizado con Electron es Visual Studio Code. Otros editores populares son Atom, Sublime Text, NotePad ++ y otros editores de texto. Muchos de estos editores de texto, incluidas las extensiones de soporte de VS Code, pero cada uno es singularmente diferente y, por lo tanto, las extensiones para Electron están dispersas y de diferente calidad.

Algunas de estas herramientas incluyen:

En conclusión, hemos analizado las capacidades de extensión de herramientas en herramientas Delphi, WPF .NET Framework y Electron. Delphi proporciona las capacidades de extensión de herramientas más amplias con un historial significativo a largo plazo detrás de las herramientas existentes. Puede resultar difícil crear extensiones de herramientas para WPF .NET Framework, ya que es posible que la experiencia interna para crear herramientas no esté disponible. Además, como WPF .NET Framework es un marco heredado, según Microsoft, es posible que las empresas no deseen asignar presupuesto para respaldarlo. Electron es solo un marco y, por lo tanto, no tiene el mismo sistema de extensión de herramientas que proporcionan un IDE integrado como Delphi / RAD Studio y Visual Studio. Los editores de texto que admiten Electron tienen cada uno sus propios sistemas de complementos únicos. En general, Delphi / RAD Studio proporciona el ecosistema de extensión de herramientas más rico.

¿Está listo para explorar todas las métricas del documento técnico “Descubriendo el mejor marco para desarrolladores a través de la evaluación comparativa”?

Descargue el documento técnico gratuito de Delphi vs.WPF vs.Ectron para computadoras de escritorio con Windows

Salir de la versión móvil