Unity Builds : avantages et pièges
Dans Visual Studio C, il est possible de créer des configurations telles que « Release All » et « Debug All » qui créent un seul ALL. cpp, qui #inclut tous les autres fichiers .cpp. Bien que cette approche offre des avantages notables, elle présente également certains défis.
Avantages
-
Compilation et liaison rapides : Les builds Unity réduisent considérablement temps de compilation et de liaison car le compilateur ne traite les fichiers qu'une seule fois.
-
Parallèle Compilation : Visual Studio peut compiler plusieurs parties du code en parallèle, améliorant ainsi encore la vitesse de construction.
Pièges
-
Problèmes de maintenance : La gestion d'un gros fichier ALL.cpp peut devenir laborieuse, en particulier lors de modifications ou refactoring.
-
Exposition des espaces de noms : Les espaces de noms anonymes ne sont plus privés des fichiers .cpp individuels, ce qui rend les variables et les fonctions visibles dans l'ensemble de l'unité de compilation. Cela peut entraîner des conflits de noms et une confusion dans le code.
-
Compatibilité DLL : Les espaces de noms anonymes ne conviennent pas aux données des DLL, car ils pourraient être modifiés par d'autres modules utilisant la même DLL. Cependant, les fonctions au sein d'espaces de noms anonymes sont acceptables.
Informations supplémentaires
Cette pratique est connue sous le nom de « Unity Build ». Il excelle dans les environnements où la création incrémentielle n'est pas nécessaire, comme les versions à partir d'un serveur central. Cependant, en raison de ses problèmes de maintenance, il n'est généralement pas adapté au développement itératif.
Pour plus d'informations, reportez-vous à ce qui suit ressources :
- https://buffered.io/posts/the-magic-of-unity-builds/
- http://randomascii.wordpress.com/2014/03 /22/make-vc-compile-fast-through-parallel-compilation/
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!