Delphi 10.4.2 Sydney est sorti, et il est plein de nouvelles fonctionnalités, correctifset des améliorations générales de la qualité. Je crois vraiment qu'il s'agit d'un mélange parfait de polissage et de nouvelles fonctionnalités, et tous ceux à qui j'ai parlé semblent être d'accord. L'une des caractéristiques les plus remarquables est l'amélioration de la vitesse du compilateur Delphi. Elles sont principalement visibles dans le compilateur Win32 et sont en partie le résultat des détails fournis par Andreas Hausladen et des corrections apportées dans les versions précédentes de son livre IDE Fix Pack.
Voici la liste des correctifs, au cas où vous seriez curieux....
- Système de fichiers
- Nom de l'unité de recherche
- GetUnitOf
- CacheControl
- Fonctions de la chaîne de caractères du nom de fichier
- KibitzIgnoreErrors
- RootTypeUnitList
- MapFile.fprintf
- Nom de l'unité
- PrefetchToken
- StrLenCalls
(Note : En raison de la nature de l'IDE Fix Pack, notre mise en œuvre est différente, mais elle permet d'atteindre le même objectif).
- WarnLoadResString
- DbkGetFileIndex
- UnlinkImports
- Réinitialiser les unités
- KibitzCompilerImplUnitReset
- UnlinkDuringCompile
- Tous libres d'unités
- UnitFindByAlias
- SymLookupScope
- Symbole importé
- NoUnitDiscardAfterCompile (Pas d'unité rejetée après la compilation)
- SourceOutdated
- MapFileBuffer
- BackgroundCompilerFileExists
- DrcFileBuffer
- Vitesse de nettoyage du paquet
- Optimisation
- FindPackage
- x64.JumpOpt
- x64.SymTabHashTable
- Libération de la mémoire inutilisée
- Fonctions de la chaîne de caractères du nom de fichier
- Rétrécissement de la mémoire
La plupart du temps, Delphi se compile très rapidement, et en fonction de votre code, vous ne verrez peut-être pas d'amélioration des performances. J'ai essayé certains de mes projets et je n'ai vu aucun changement. Matthias Eißing a indiqué qu'il avait constaté une accélération significative lors de la compilation de HeidiSQLJ'ai donc tenté ma chance et j'ai réalisé une vidéo.
En résumé, la compilation Win32 est passée de 5,5 secondes dans la version 10.4.1 Rio à 3,3 secondes dans la version 10.4.2. Il s'agit d'une amélioration de la vitesse de 40%.
D'autres personnes ont partagé les améliorations de vitesse qu'elles ont découvertes en passant à la version 10.4.2 de Sydney.
Adrian Gallero, chef de projet chez TMS Software, a montré qu'il fallait compiler le million de lignes de code derrière TMS FlexCel. Il contient "beaucoup de génériques, un peu plus de 3000 unités, des inclusions multiples, des cycles d'unités qui s'utilisent de manière récursive, et des dépendances complexes". Son temps de compilation est passé de 30 secondes en 10.3 Rio à 19 secondes en 10.4.2 Sydney.

