Nouveautés de la 10.4 Sydney !
Depuis le 27 février, la version bêta de la 10.4 de RAD Studio est disponible ici : https://community.idera.com/developer-tools/b/blog/posts/get-ready-for-the-10-4-beta-with-update-subscription
Embarcadero m’a donné la permission de parler des nouveautés de cette version qui sera disponible bientôt en version finale !
Comme annoncé dans le lien précédent, les principales nouveautés annoncées pour Delphi sont :
- Le « Language Server Protocol » pour Delphi
- Amélioration du langage : les enregistrements (record) managés
- Gestion de la mémoire unifiée sur toutes les plateformes
Le « Language Server Protocol » pour Delphi, ça parait assez obscure comme nouveauté. Ça signifie surtout des gains de productivité assez impressionnants !
L’auto-complétion de code, c’est quelque chose de très pratique quand on développe et ça fait gagner beaucoup de temps et parfois de mémoire, quand on ne se rappelle plus exactement du nom de la fonction qu’on veut écrire ou des paramètres qu’elle requiert. Mais parfois, c’est lent, ça ne veut pas s’afficher… Pour ma part, j’ai beaucoup expérimenté la liste des paramètres qui s’affiche au moment où je tape le premier paramètre, puis je tape la virgule et la liste disparaît au deuxième paramètre 😣 Et il faut tout recommencer plus lentement ou se rappeler de chacun des paramètres.
J’imagine que vous connaissez aussi l’encadré des erreurs à gauche dans l’EDI, ainsi que les erreurs qui sont soulignés en rouge comme on le voit sur le « if » de l’image précédente.
Parfois, j’ai des tas d’erreurs comme celles-ci et pourtant mon code compile sans erreur ni avertissement 🤔.
Tout ça (et bien plus encore), c’est fini dans la version 10.4 !
Grâce au Language Server Protocol, qui consiste, en résumé, à avoir toutes ces fonctionnalités dans un autre processus que le processus de l’EDI, les erreurs seront bien celles que le compilateur vous indiquera à la compilation. De plus, l’auto-complétion de code ne se liquéfiera plus comme dans les versions précédentes.
Vous pouvez voir cette amélioration en action sur le post de David Millington ici : https://community.idera.com/developer-tools/b/blog/posts/new-in-delphi-10-4-redesigned-code-insight
Une autre nouveauté intéressante est l’ajout des enregistrements (record) managés que l’on va pouvoir personnaliser. Personnellement je n’utilise pas souvent les enregistrements, bien que je sais qu’ils puissent être très utiles.
Un enregistrement est un « regroupement » de champs de n’importe quel type. Quand un des types est un type managé par le compilateur (par exemple le type string), l’enregistrement est dit managé et le compilateur est obligé d’ajouter du code supplémentaire pour gérer l’initialisation et la destruction de l’enregistrement.
Dans la version 10.4, de nouveaux opérateurs apparaissent pour gérer nous-même ces phases d’initialisation et de l’enregistrement. On pourra, par exemple, initialiser des valeurs ou écrire l’appel à l’enregistrement dans les logs.
D’autres opérateurs comme Assign seront également ajoutés dans la 10.4. On pourra ainsi coder plus finement les copies d’enregistrement, par référence, par valeur, etc.
Marco Cantu précise quels opérateurs seront disponibles et donne quelques exemples d’enregistrements managés personnalisés ici : https://community.idera.com/developer-tools/b/blog/posts/custom-managed-records-coming-to-delphi-10-4
Bien sûr, toutes ces nouveautés ont été testées sur une version « pre-release » de la 10.4 donc il y aura sûrement quelques modifications pour la version finale !
Il y aura également des nouveautés dans C++ Builder, des nouveaux composants VCL et FMX, des nouveaux styles, des améliorations liées aux plateformes Android, OSX et iOS.
J’espère que vous êtes aussi impatients que moi qu’Embarcadero RAD Studio 10.4 sorte officiellement !
Pour ma part, les gains de productivité vont être conséquents, notamment en ce qui concerne les erreurs, je passerai moins de temps à attendre que le compilateur ait fini de compiler pour déboguer mon code.
Il ne reste plus qu’à patienter ⏳