Site icon Embarcadero RAD Studio, Delphi, & C++Builder Blogs

Delphi offre une intégration d’API d’outils tiers plus profonde que WPF et Electron

wp1 tool extension

Comment Delphi, WPF .NET Framework et Electron se comparent-ils et quel est le meilleur moyen de faire une comparaison objective? Embarcadero a commandé un livre blanc pour étudier les différences entre Delphi, WPF .NET Framework et Electron pour la création d’applications de bureau Windows. L’application de référence – un clone de la calculatrice Windows 10 – a été recréée dans chaque cadre par trois bénévoles Delphi Most Valuable Professionals (MVP), un développeur WPF indépendant et un développeur indépendant d’Electron. Dans cet article de blog, nous allons explorer la métrique Extension d’outil qui fait partie de la comparaison des fonctionnalités utilisée dans le livre blanc.

Comment comparer les extensions d’outils?

Le cadre peut-il être étendu dans sa propre langue? Les frameworks qui nécessitent des plug-ins, des extensions ou des modifications pour être écrits dans une langue différente imposent des coûts aux entreprises qui nécessitent des fonctionnalités modifiées. Plutôt que de créer l’outil requis à partir des connaissances des résidents, les entreprises peuvent devoir investir du temps et des ressources pour embaucher un entrepreneur externe ou acquérir des compétences internes dans cette autre langue.

Delphi est livré avec un logiciel de test et donne également aux entreprises la possibilité de développer des outils et des extensions pour le framework en utilisant le même talent que celui qui construit leur produit (l’EDI Delphi est programmé dans Delphi). WPF propose des bibliothèques de test via Visual Studio, et les entreprises peuvent profiter du grand outil tiers et de l’environnement d’extension, mais peuvent avoir besoin d’externaliser le travail pour créer leurs propres extensions ou investir dans des talents pour les langages non WPF. Electron ne dispose pas d’un IDE natif, ce qui donne aux entreprises un choix, mais supprime également certaines commodités telles que la compilation intégrée et les bibliothèques de test incluses. Les entreprises développant des outils internes auraient plus de difficultés avec Electron qu’avec les autres frameworks.

Jetons un coup d’œil à chaque cadre.

Quelles fonctionnalités d’extension d’outils sont disponibles pour Delphi?

L’IDE RAD Studio pour Delphi est écrit en Delphi. Les utilisateurs peuvent créer leurs propres extensions et outils dans Delphi, éliminant ainsi le besoin d’apprendre un nouveau langage et de gérer les problèmes de limites de langage. De plus, les extensions et les outils peuvent être créés en C ++ via le côté C ++ Builder de RAD Studio.

RAD Studio dispose d’une API puissante vous permettant d’étendre ou de modifier le comportement de l’EDI. Créez un package ou un plugin DLL qui ajoute de nouvelles fenêtres d’outils, dessine dans l’éditeur de code, fournit la complétion du code, ajoute de nouveaux types de projets, types de fichiers et mise en évidence, se connecte aux événements de haut niveau et de bas niveau, suit les processus et les threads pendant le débogage , et plus.

Il existe un riche écosystème de modules complémentaires open source et fermés. Il existe un certain nombre de modules complémentaires disponibles directement via Embarcadero GetIt dans l’EDI .

Ce qui suit est un extrait du livre blanc Extending the Delphi IDE de Bruno Fierens et Embarcadero.

Quelle est l’architecture de base de l’API Delphi IDE?

L’API est fortement basée sur les interfaces. Les interfaces commencent généralement par le préfixe IOTA ou INTA. L’EDI expose de nombreuses interfaces qui peuvent être appelées à partir du plugin; inversement, l’EDI lui-même peut également appeler du code à partir du plugin lorsqu’une action spécifique est déclenchée dans l’EDI. Pour informer l’EDI que le plugin a un gestionnaire pour ces actions, dans la plupart des cas, cela se fait en écrivant une classe descendant de TNotifierObject qui implémente une interface et enregistre la classe avec l’EDI. En tant qu’écrivain de plugins, vous vous retrouverez principalement à écrire du code qui appelle les interfaces IDE et à écrire des classes qui implémentent des interfaces qui seront appelées depuis l’EDI.

Quelles zones de l’IDE de RAD Studio peuvent être étendues?

L’EDI Delphi peut être étendu de plusieurs manières. Voici un bref aperçu des domaines les plus courants d’extension de l’EDI:

Voici également une vidéo en vedette Developer Skill Sprint intitulée Developing Plugins in RAD Studio :

Un certain nombre d’extensions populaires pour RAD Studio incluent:

Quelles fonctionnalités d’extension d’outil sont disponibles pour WPF .NET Framework?

Visual Studio, l’IDE WPF natif, peut être étendu de différentes manières et dans plusieurs langues. Les macros sont écrites en Visual Basic, les compléments sont écrits en .NET et les packages peuvent être écrits en .NET, C #, C ++ ou Visual Basic. Étant donné que WPF est écrit en XAML et est lié à un back-end logique C #, les entreprises peuvent ne pas avoir d’expérience en interne pour créer les outils dont elles ont besoin pour améliorer leurs environnements de développement sans sous-traiter le travail ou investir dans la formation.

Selon Microsoft, Visual Studio permet d’étendre «les menus, les barres d’outils, les commandes, les fenêtres, les solutions, les projets, les éditeurs, etc.». En outre, il répertorie les éléments communs suivants qui peuvent être étendus.

En savoir plus sur l’extension de Visual Studio ici:
https://docs.microsoft.com/en-us/visualstudio/extensibility/starting-to-develop-visual-studio-extensions?view=vs-2019

Quelles capacités d’extension d’outils sont disponibles pour Electron?

Electron ne dispose pas d’un IDE natif mais peut utiliser des plug-ins disponibles dans les IDE tels que Visual Studio Code. Des outils Electron supplémentaires peuvent devoir être développés en interne à partir de zéro ou intégrés à un outil tiers tel que Visual Studio Code. Il existe un grand nombre de projets open source autour des outils et des fonctionnalités pour Electron.

Un éditeur populaire utilisé avec Electron est Visual Studio Code. Les autres éditeurs populaires sont Atom, Sublime Text, NotePad ++ et d’autres éditeurs de texte. Un grand nombre de ces éditeurs de texte, y compris des extensions de support VS Code, mais chacun est unique et par conséquent, les extensions pour Electron sont dispersées et de qualité variable.

Certains de ces outils incluent:

En conclusion, nous avons examiné les capacités d’extension d’outils dans Delphi, WPF .NET Framework et les outils Electron. Delphi fournit les capacités d’extension d’outils les plus étendues avec un historique significatif à long terme derrière les outils existants. Il peut être difficile de créer des extensions d’outils pour WPF .NET Framework car l’expérience interne de création d’outils peut ne pas être disponible. De plus, comme WPF .NET Framework est un framework hérité selon Microsoft, les entreprises peuvent ne pas vouloir allouer de budget à sa prise en charge. Electron n’est qu’un framework et par conséquent n’a pas le même système d’extension d’outils qu’un IDE intégré comme Delphi / RAD Studio et Visual Studio fournit. Les éditeurs de texte qui prennent en charge Electron ont chacun leur propre système de plugins. Dans l’ensemble, Delphi / RAD Studio fournit l’écosystème d’extension d’outils le plus riche.

Êtes-vous prêt à explorer toutes les mesures du livre blanc «À la découverte du meilleur framework de développement grâce à l’analyse comparative»?

Téléchargez le livre blanc gratuit Delphi vs WPF vs Electron pour les ordinateurs de bureau Windows

Quitter la version mobile