Je pense que c'est mieux de libérer la version du logiciel que vos développeurs de test; j'ai donc tendance à supprimer le "debug" cible du projet/makefile, de sorte qu'il n'y a qu'une seule version qui peut être construit (et testé, et débogué, et publié).
Pour une raison similaire, je n'utilise pas "assertions" (voir également http://stackoverflow.com/questions/419406/are-assertions-always-bad#419410 ...).
Une personne n'a fait valoir que la raison pour laquelle une version de déboguage, c'est que c'est plus facile à déboguer: mais, je me contre-dire que vous peut éventuellement veulent soutenir et de débogage, quel qu'il soit, vous avez publié, et si vous avez besoin de construire une release qui vous pouvez si nécessaire debug ... cela peut permettre symboles de débogage, et la désactivation de certaines optimisations, même dans la "libération" de construire.
Quelqu'un a dit que "c'est une mauvaise idée"; c'est une politique qui j'ai évolué il y a quelques années, après avoir été brûlé par:
- Certains développeurs de tester leurs debug, mais pas les versions
- Certains développeurs d'écriture des bugs qui apparaissent uniquement dans la version
- La société en relâchant la version d'après l'analyse inadéquat (est-il jamais tout à fait suffisante?)
- D'être appelé à la version de débogage
Depuis j'en ai vu plus d'une autre au développement de la boutique de suivre cette pratique (c'est à dire ne pas avoir séparé debug et release).
Quelle est votre politique?