Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
DelphiIDENouvelles

Améliorations de Code Insight dans Delphi 10.4.2

rad studio 1042

RAD Studio 10.4.2 a été conçu comme un suivi axé sur les fonctionnalités de la version 10.4.1 axée sur la qualité. Cependant, en plus de fournir certaines fonctionnalités majeures, nous avons également résolu plus de problèmes dans la version 10.4.2 que dans la version précédente!

Cela s’applique autant à Code Insight, ou DelphiLSP, qu’à d’autres parties de Delphi 10.4.2. Jetons un coup d’œil aux nouveautés. Tout d’abord, les fonctionnalités…

Error Insight – maintenant Error, Warning et Hint Insight

Pendant de nombreuses années, vous avez pu voir les erreurs de code détectées à l’avance avant la compilation, affichées via un soulignement en zigzag rouge dans l’éditeur de code (un squiggly rouge  ».) Une des grandes améliorations que nous avons apportées avec l’introduction de DelphiLSP dans 10.4 était de s’assurer que ces indications étaient toujours correctes: il y a une corrélation 1: 1 entre le marqueur dans l’éditeur de code et les erreurs du compilateur que vous verriez si vous compiliez le code, et toutes les erreurs affichées dans l’éditeur et le volet Structure sont corrects.

Dans la version 10.4.2, nous avons étendu cela afin que vous puissiez également voir les avertissements et les astuces dans l’éditeur de code. Les avertissements et les astuces fournissent des informations précieuses sur votre code, des problèmes qui n’empêcheront pas la compilation mais peuvent empêcher votre application de fonctionner comme vous le souhaitez. Les afficher en direct dans l’éditeur au fur et à mesure que vous tapez vous donne des commentaires et des délais beaucoup plus rapides pour résoudre les problèmes de votre code. Et pour ceux qui préfèrent compiler sans avertissements ni conseils – un grand objectif – les voir en ligne sera inestimable.

squiggly light

Dans 10.4.2, nous ne l’avons pas activé par défaut, de sorte que l’éditeur de code ne soit pas couvert de plusieurs couleurs pour ceux dont le code a de nombreux avertissements et astuces. Après les premiers commentaires des clients, nous pouvons l’activer par défaut dans la version 10.5! Mais pour cette version, vous pouvez l’activer dans les Options de l’EDI> Interface utilisateur> Éditeur> page Langue, onglet Error Insight  », zone de liste déroulante Error Insight Display  »:

error insight options trimmed

You can control what Error Insight levels are displayed and what other Error Insight UI is shown

Cet onglet vous permet de choisir entre voir: les erreurs uniquement; erreurs et avertissements; ou des erreurs, des avertissements et des conseils. Nous vous recommandons d’activer l’affichage des trois.

Rendu de l’éditeur et autres problèmes de dénomination

«Error Insight» est un nom génial – sauf que maintenant il pourrait vraiment s’appeler Error, Warning et Hint Insight. (Non, nous n’avons pas changé la façon dont nous nous référons à la fonctionnalité.)

Un autre grand nom était «squigglies rouges»… sauf que c’est maintenant «squigglies rouges, ambrés et bleus». Mais ce n’est pas tout. Maintenant, ils ne sont peut-être même plus du tout des gribouillis! Le département de nommer les choses vraiment bien ici chez Embarcadero est assez mécontent de toutes les nouvelles fonctionnalités que nous vous fournissons avec cette version. Regarde ça:

10 4 2 error insight underlines

Dans la version 10.4.2, nous voulons nous assurer que les marqueurs de l’éditeur de code sont clairs et faciles à voir, et nous savons que nos clients aiment souvent personnaliser l’EDI selon leurs propres préférences. Pour ces raisons, nous avons quatre façons différentes de rendre le soulignement: le zigzag traditionnel, mais aussi une onde courbe (comme les autres IDE), une ligne de points (mon préféré, car je pense que c’est sobre et élégant mais toujours clair, et insiste Je ne réfléchis pas du tout à une analyse de quelques pixels) et à une barre inférieure solide. Nous espérons que vous apprécierez cette configuration, et surtout si vous avez un moniteur haute résolution ou des problèmes de vue, vous trouverez le style de marqueur qui convient à vos besoins.

Nous montrons également une icône dans la gouttière de l’éditeur. Cela permet de repérer facilement les erreurs, les avertissements ou les astuces lors du défilement rapide. Comme les autres changements ici, cela peut être contrôlé ou complètement désactivé si vous le souhaitez.

Aperçu de la barre d’état et des info-bulles de l’éditeur

Si vous disposez de suffisamment d’espace horizontal, la barre d’état en bas de l’éditeur de code vous donnera maintenant un aperçu du nombre d’erreurs, d’avertissements et d’indices dans l’unité actuelle.

error insight in status bar

Si vous passez la souris sur une erreur (ou un avertissement ou un indice), nous avons également modifié son affichage.

error insight tooltip

Activité du serveur LSP

Vous êtes-vous déjà demandé ce que fait le moteur Code Insight, ce qu’il traite et quand il pourrait être prêt à donner des résultats? Dans 10.4.2, une petite barre en bas de la vue Projets répertorie l’activité du serveur LSP.

Hérité

En mars 2015, plus d’un an avant de rejoindre Embarcadero et à un moment où je n’avais aucune idée que je pourrais travailler ici un jour, et encore moins être responsable de cette partie de Delphi, je suis entré dans la demande de fonctionnalité du portail de qualité RSP-10217 . C’est un rapport QP populaire avec 117 votes et 41 observateurs. La demande était d’étendre Ctrl + Clic, qui navigue jusqu’à la déclaration d’un symbole, pour vous permettre de Ctrl + Clic sur le mot-clé «hérité».

Je suis très heureux de dire qu’en 10.4.2 cette fonctionnalité est implémentée. Vous pouvez Ctrl + Clic sur le mot-clé «hérité» et, s’il est qualifié avec une méthode telle que «Créer hérité», également Ctrl + Clic sur le nom de la méthode, qui sera également compris comme la navigation vers cette méthode héritée.

10 4 2 ctrl click inherited

Pourquoi est-ce un ajout si utile? Naviguer vers l’endroit où quelque chose est défini est très utile pour en savoir plus et savoir ce qu’il fait, et c’est pourquoi Ctrl + Clic en général est utile. Mais la fonctionnalité ne fonctionnait que sur les noms de symboles. Lorsque vous invoquez une méthode héritée, ou en d’autres termes, invoquez l’implémentation dans une classe ancêtre, c’est aussi quelque chose vers lequel vous voulez pouvoir naviguer pour savoir ce qu’elle fait: en fait, c’est très utile car se déplacer dans un héritage La hiérarchie est importante pour comprendre votre code orienté objet. Il n’y avait aucun moyen de trouver la méthode héritée. Maintenant il y a!

Dans une touche finale, le code terminé après le mot-clé ‘inherited’ ne listera désormais que les méthodes des classes ancêtres.

… Et de la qualité!

Tout ce qui précède est de nouvelles fonctionnalités, parfois de nouvelles fonctionnalités vraiment intéressantes. Mais comme je l’ai mentionné au début de cet article, 10.4.2 était également une version de grande qualité. Pour DelphiLSP, cela a parfois signifié la correction de bogues. Mais cela signifiait également réviser les fonctionnalités – peaufiner, ajuster, s’assurer qu’elles fonctionnent dans des scénarios moins courants, modifier le comportement en fonction des commentaires, etc. Voici une liste de quelques-uns des correctifs, ajustements, changements, ajustements et améliorations que nous avons ajoutés à DelphiLSP dans cette version.

  • Fonctions de complétion de code dans les blocs IFDEF pour les macros intégrées que le compilateur a définies dans certaines situations, telles que UNICODE ou MSWINDOWS
  • 10 4 2 completing uses clauseDe nombreuses améliorations aux unités affichées lorsque le code se termine dans la clause uses (il affichera également les fichiers .pas et .dcu dans les chemins de recherche et de projet; vous pouvez désactiver les DCU si vous en avez besoin dans les options du projet au niveau de chaque plate-forme) ; plus une unité «tige» (comme «Winapi» dans «Winapi.Windows») est également répertoriée; il vous indique même quand une unité que vous complétez est déjà dans la clause uses!
  • De nombreuses améliorations de la résolution des surcharges, qui seront visibles lorsque Ctrl + Clic sur une méthode surchargée, ou l’affichage de Parameter Insight lorsqu’il y a plusieurs surcharges pour une méthode
  • Ctrl + clic sur une implémentation de méthode ira à sa déclaration, et vice versa. La navigation Ctrl + Clic fonctionne également pour les appels à des méthodes génériques instanciées, dans de nombreux cas sur des symboles dans un code incorrect (non compilable); et sur l’argument intégré de sortie; plus des améliorations en l’utilisant dans une clause uses
  • De nombreuses améliorations pour les génériques, y compris l’achèvement dans des classes génériques montrant des symboles stricts privés / protégés; rechercher des champs de recherche de déclaration et des propriétés dans des types génériques; trouver des méthodes génériques dans une autre unité; et plus
  • De nombreuses améliorations complétant et naviguant vers: les attributs; énumérations étendues (elles afficheront et compléteront l’énumération avec leur étendue); lister les chaînes de ressources; navigation vers les propriétés et les getter / setters de propriétés; et plus
  • Améliorations de l’affichage de la documentation, y compris l’affichage de XMLDoc pendant l’achèvement des paramètres
  • De nombreux ajustements de performances. Même l’exécutable a maintenant une taille plus petite.

Et ce n’est pas tout – il y a beaucoup, beaucoup plus d’ajustements, de changements et de correctifs de qualité dans tout DelphiLSP. Ce qui précède représente peut-être un quart de la liste, et vous remarquerez que de nombreux points couvrent plusieurs éléments. Chacun a d’autres éléments – il y a plus d’ajustements à la gestion de la recherche .pas et .dcu, par exemple, qui ne sont pas mentionnés, ou plus d’ajustements autour de l’achèvement des paramètres, ou des ajustements sur la façon dont l’EDI insère le texte, ou…

L’impression que je voudrais communiquer est à quel point ce qui a été révisé et amélioré dans 10.4.2. Vous ne remarquerez peut-être pas la plupart des éléments ci-dessus: ce sont des améliorations subtiles. Le sens général est que la complétion de code et les fonctionnalités associées fonctionnent uniquement lorsque vous vous y attendez, comme vous vous y attendez.

Aperçu

10 4 2 ctrl click inheritedNon seulement Code Insight dans Delphi et RAD Studio 10.4.2 est livré avec de nouvelles fonctionnalités vraiment utiles, y compris celles couramment demandées – avertissements et astuces dans l’éditeur! Ctrl + clic sur ‘hérité’! Voyez ce que fait le serveur LSP! – l’ensemble de la fonctionnalité a de nombreuses révisions de qualité. Les commentaires que nous avons reçus jusqu’à présent ont été très favorables et nous vous recommandons vivement d’installer 10.4.2 dès que possible.


Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Leave a Reply

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

IN THE ARTICLES