Comment améliorer le temps de compilation pour C/C++ ?
Apple propose un système de modules pour remplacer les en-têtes
Comment améliorer le temps de compilation pour C/C++ ?
Apple propose un système de modules pour remplacer les en-têtes
|
Les rubriques (actu, forums, tutos) de Développez
Réseaux sociaux
Sur le même sujet
|
Le 11/12/2012, par Hinault Romaric, Responsable Actualités
Un des problèmes assez décriés des langages C et C++ est le temps de compilation, qui est un peu plus long.Cela est surtout dû à l’utilisation des en-entêtes (headers). Les développeurs d’Apple viennent de proposer un document assez intéressant qui introduit un système de modules pour C et C++ afin d’améliorer le temps de compilation. À titre d’exemple, Apple cite le minuscule code source de « Hello world » en C : quatre lignes de code seulement. Pourtant, le fichier d’en-tête nécessaire pour sa compilation est 173 fois plus grand que l’application elle-même. Cela est encore plus grave avec C++, où les en-têtes standards nécessaires pour compiler le petit « Hello world » sont 14 300 fois supérieures au code du programme même. Ce sont beaucoup d’informations que le compilateur doit manipuler pour exécuter le programme le plus simple du monde. ![]() L’équipe du compilateur LLVM d’Apple a élaboré une proposition sérieuse reposant sur des modules. Un module est présenté comme un ensemble décrivant une bibliothèque : une interface de la bibliothèque (API) ; une mise en place de la bibliothèque. Ce sera un changement assez important dans ces langages en cas d’adoption de cette proposition, car les en-têtes seront remplacées par des modules. Mais le gain en temps de compilation est également assez important. Source : La proposition d'Apple en PDF Et vous ? Qu'en pensez-vous ? |



Un des problèmes assez décriés des langages C et C++ est le temps de compilation, qui est un peu plus long.
Qu'en pensez-vous ?


