La version Community Edition de l'EDI C++ Builder a été mise à jour vers la version 13, offrant aux utilisateurs éligibles un accès gratuit à la chaîne d'outils Win64 moderne

La Community Edition de C++ Builder a été mise à jour vers la version 13, offrant ainsi aux utilisateurs éligibles un accès gratuit à la chaîne d'outils Win64 moderne. Dans l’ensemble, la nouvelle chaîne d’outils Windows 64 bits rend le développement open source plus facile, plus prévisible et plus unifié dans l’ensemble du domaine. Les nouveaux projets Win64 Modern dans C++Builder 13 utilisent C++23 par défaut. La prise en charge de CMake via GetIt a été introduite dans C++Builder 12.2 et est reconduite dans la version 13 avec quelques améliorations. Elle est destinée aux étudiants, aux amateurs, aux indépendants et aux petites équipes qui répondent aux conditions d'octroi de licence de la Community Edition.

Embarcadero Technologies, Inc. est une société américaine spécialisée dans les logiciels informatiques qui développe, fabrique, concède sous licence et assure le support de produits et services liés aux logiciels par l'intermédiaire de plusieurs divisions produits. Fondée en 1993, elle est entrée en bourse en 2000, puis est redevenue une société privée en 2007, avant de devenir une division d'Idera, Inc. en 2015. Parmi ces produits, on peut citer : Delphi est un environnement de développement rapide d’applications (RAD) et un dialecte orienté objet du langage de programmation Pascal, dérivé de Turbo Pascal; C++Builder est l'équivalent de Delphi, mais repose sur le langage de programmation C++ plutôt que sur Pascal, en utilisant la bibliothèque de composants visuels de Delphi et un compilateur C++ natif. Embarcadero RAD Studio est une suite de développement rapide d'applications qui inclut Delphi et C++Builder pour la création d'applications natives Windows, mobiles et de bases de données.

C++Builder est un environnement de développement rapide d'applications permettant de développer des logiciels en langage C++. Développé à l'origine par Borland, il appartient depuis 2009 à Embarcadero Technologies, une filiale d'Idera. C++Builder permet de compiler des applications pour Windows (IA-32 et x64), iOS, macOS et Android (32 bits uniquement). Il comprend des outils permettant un développement visuel par glisser-déposer, ce qui facilite la programmation grâce à l'intégration d'un générateur d'interface utilisateur graphique de type WYSIWYG. C++Builder combine la bibliothèque de composants visuels (VCL) et l’EDI écrits en Object Pascal avec plusieurs compilateurs C++. Comme Delphi et le C++ utilisent le même éditeur de liens en arrière-plan, le débogueur peut passer du code Delphi au code C++ de manière transparente. De plus, les projets C++Builder peuvent inclure du code Delphi. (L'inverse n'est pas possible.)

Récemment, la Community Edition de C++ Builder a été mise à jour vers la version 13, offrant ainsi aux utilisateurs éligibles un accès gratuit à la chaîne d'outils Win64 moderne. Elle est destinée aux étudiants, aux amateurs, aux indépendants et aux petites équipes qui répondent aux conditions d'octroi de licence de la Community Edition.


Voici les principales améliorations de cette annonce :

Clang 20 comme base

RAD Studio CE met à niveau le compilateur Win64 Modern (bcc64x) de Clang 15 à Clang 20. Cela réduit considérablement l’écart avec la version en amont de LLVM. L’intégration VCL/FMX d’Embarcadero et les correctifs spécifiques à la plateforme s’appuient désormais sur un compilateur beaucoup plus proche de celui utilisé pour les tests dans l’écosystème C++ au sens large – ce qui est important lorsque vous essayez de créer une bibliothèque tierce qui suppose l’utilisation d’une version récente et standard de Clang.

Cinq versions en amont de Clang séparent la version 15 de la version 20, et l’effet cumulatif sur les diagnostics est perceptible : les messages d’erreur sont plus précis, les traces d’instanciation des modèles sont plus faciles à lire, et un éventail plus large d’avertissements est déclenché par défaut. Dans l’ensemble, la nouvelle chaîne d’outils Windows 64 bits rend le développement open source plus facile, plus prévisible et plus unifié dans l’ensemble du domaine.

Prise en charge de C++23

Les nouveaux projets Win64 Modern dans C++Builder 13 utilisent C++23 par défaut. Vous pouvez passer à C++17 ou C++20 dans les paramètres du projet. Clang 20 offre une couverture linguistique étendue de C++23 — voici les fonctionnalités ayant l’impact le plus concret :

La déduction de this vous permet d’écrire une seule fonction membre qui fonctionne à la fois pour l’accès const et non const, ainsi que pour les qualifications lvalue et rvalue :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
struct Buffer {
****template <typename Self>
****auto& data(this Self&& self) { return self.m_data; }
};


Les hiérarchies CRTP qui nécessitaient auparavant static_cast<Derived&>(*this) peuvent désormais exprimer la même chose directement. Les lambdas récursifs deviennent également naturels.

[assume(expr)] offre à l’optimiseur un moyen portable de déclarer des préconditions :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
void process(int* p, int n) {
****[[assume(n > 0)]];
****[[assume(p != nullptr)]];
****// ...
}


Contrairement à __builtin_assume, cette fonctionnalité est standard en C++23 et portable entre les compilateurs conformes.

L’extension de durée de vie dans les boucles range-for corrige un piège de comportement indéfini de longue date. Avant C++23, ce code présentait un comportement indéfini (UB) si getWidget() renvoyait un objet temporaire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
for (auto& item : getWidget().items()) { ... }


L’objet temporaire était détruit avant l’exécution du corps de la boucle. Le C++23 prolonge la durée de vie des objets temporaires créés dans l’initialiseur de plage afin de couvrir l’intégralité de la boucle — le code qui était silencieusement défectueux est désormais défini.

static operator() et static operator[] — les foncteurs sans état et les opérateurs d’indexation n’ont plus besoin d’un paramètre this implicite, ce qui permet au compilateur d’ignorer complètement cet argument pointeur inutile.

if consteval offre un moyen simple de basculer entre les chemins de compilation et d’exécution sans avoir recours à la solution de contournement if constexpr(std::is_constant_evaluated()).

LLDB 20 : mise à jour du débogueur

RAD Studio 13 adopte LLDB 20 comme backend de débogage. Les notes de version en amont de LLDB 20 mentionnent l’analyse parallèle des bibliothèques partagées — ce qui réduit considérablement les temps de connexion et de lancement sur les projets volumineux — ainsi que le placement corrigé des points d’arrêt sur les sites d’appel inline, où les versions précédentes déplaçaient silencieusement le point d’arrêt vers l’instruction réelle suivante.

CMake et bibliothèques tierces

La prise en charge de CMake via GetIt a été introduite dans C++Builder 12.2 et est reconduite dans la version 13 avec quelques améliorations. La configuration :

1. une version patchée de CMake avec un fichier de chaîne d’outils pour bcc64x ;
2. Ninja comme outil d’exécution de la compilation ;
3. une API de type fonction — set_embt_target(<target> ...) — qui prend en charge plusieurs cibles CMake dans un même projet.

C’est ici que l’on ressent le plus directement les avantages concrets de la mise à niveau vers Clang 20 : de nombreuses bibliothèques tierces qui nécessitaient auparavant des correctifs pour être compilées sous C++Builder fonctionnent désormais sans modification. Fonctionnement confirmé :

- OpenCV ;
- Google Test ;
- VTK ;

et bien d’autres encore.

Mises à jour technologiques

La nouvelle édition Community intègre les mêmes VCL et FMX que vous appréciez, avec toutes les nouvelles fonctionnalités de RAD Studio 13.

Améliorations de FireMonkey

FireMonkey est l’un des deux frameworks d’application disponibles pour les développeurs C++Builder. Les mises à jour introduites depuis C++Builder 12.1 comprennent :

- Amélioration de la synchronisation des animations et de la stabilité visuelle grâce au nouveau service Display Link ;
- Contrôle plus étendu des gestes tactiles, du comportement de défilement et des effets de rebond ;
- Transferts de bitmaps assistés par GPU pour de meilleures performances graphiques ;
- Nouveaux composants TApplicationEvents et TMaskEdit ;
- Modes d’alignement supplémentaires simplifiant le centrage précis des contrôles ;
- Fonctionnalités intégrées de vérification orthographique améliorées ;
- Intégration actualisée avec Skia4Delphi ;
- Nombreuses optimisations de performances et améliorations de la qualité.

Améliorations de la VCL pour Windows

C++Builder 13 apporte de nouvelles mises à jour au développement VCL pour les applications Windows natives, notamment :

- Prise en charge du défilement dans TActionMainMenuBar ;
- Stylisation plus flexible des barres de titre des formulaires personnalisés ;
- Une nouvelle intégration du runtime WebView2 pour TEdgeBrowser ;
- Améliorations en termes d'ergonomie et d'aspect visuel pour TControlList, TFormTabsBar et TToggleSwitch.

EDI 64 bits

L'EDI C++Builder est désormais une application native 64 bits, offrant un accès à davantage de mémoire et une stabilité améliorée lors de la gestion de projets volumineux et d'environnements de développement complexes.

Problèmes connus

Nous avons identifié un problème affectant l'installation du pack linguistique français dans C++Builder 13 Community Edition. Tant que ce problème n'est pas résolu, veuillez ne pas sélectionner ni installer la prise en charge de la langue française, car cela pourrait entraîner l'échec de l'installation. Nous travaillons actuellement à la résolution de ce problème.

Qui peut utiliser C++Builder Community Edition ?

C++Builder Community Edition est destiné :

- aux étudiants apprenant le C++ et le développement d’applications natives ;
- aux développeurs amateurs créant des applications à des fins personnelles ou non commerciales ;
- les freelances et les développeurs indépendants dont les revenus annuels issus de leurs applications sont inférieurs à 5 000 dollars US ;
- les start-ups et les organisations dont le chiffre d’affaires annuel est inférieur à 5 000 dollars US et dont les équipes de développement ne comptent pas plus de cinq personnes.

C++Builder Community Edition est disponible gratuitement sous licence d’une durée d’un an et autorise une utilisation commerciale limitée. La Community Edition n’est pas destinée à servir d’essai à long terme et ne doit pas être utilisée par les organisations qui détiennent déjà des licences commerciales standard de C++Builder. Lorsqu’un projet, une équipe ou une entreprise dépasse les limites de la Community Edition, les éditions Professional, Enterprise et Architect de C++Builder offrent des licences commerciales sans restriction et un ensemble plus complet de fonctionnalités de développement.

Prochaines étapes

C++Builder 13 CE met la chaîne d’outils Florence à la disposition des utilisateurs de l’édition Community, offrant ainsi aux développeurs éligibles l’accès aux mêmes fondements C++ modernes que ceux introduits dans la version commerciale. À l’avenir, RAD Studio 13.2 continuera d’améliorer la productivité en C++ dans les éditions payantes, avec des améliorations de confort d’utilisation conçues pour se cumuler tout au long d’une journée de travail.

Télécharger la version Community Edition de C++ Builder

Et vous ?

Pensez-vous que cette annonce est crédible ou pertinente ?
Quel est votre avis sur le sujet ?

Voir aussi :

Embarcadero annonce la sortie de l'environnement de développement intégré (EDI) RAD Studio 13 Florence Update 1 (RAD Studio 13.1), ainsi que les versions Delphi 13 Update 1 et C++Builder 13 Update 1

Embarcadero annonce la sortie de l'édition communautaire de son EDI Delphi 13

Embarcadero a lancé l'EDI RAD Studio 13 Florence avec intégration de l'IA, le nouvel opérateur ternaire de Delphi, des WebStencils améliorés et la prise en charge de C++23 pour C++Builder