J'avais l'habitude de coder en C # dans un style TDD - écrire / ou changer un petit morceau de code, recompiler en 10 secondes toute la solution, relancer les tests et encore. Facile...
Cette méthodologie de développement a très bien fonctionné pour moi pendant quelques années, jusqu'à l'année dernière où j'ai dû revenir au codage C ++ et j'ai vraiment l'impression que ma productivité a considérablement diminué depuis. Le C ++ en tant que langage n'est pas un problème - j'ai eu beaucoup d'expérience pour les développeurs C ++ ... mais dans le passé.
Ma productivité est toujours correcte pour de petits projets, mais elle empire quand avec l'augmentation de la taille du projet et une fois que le temps de compilation atteint 10+ minutes, cela devient vraiment mauvais. Et si je trouve l'erreur, je dois recommencer la compilation, etc. C'est tout simplement frustrant.
J'ai donc conclu que dans de petits morceaux (comme avant) n'est pas acceptable - toutes les recommandations comment puis-je me mettre dans la vieille habitude de coder pendant environ une heure, lors de la révision manuelle du code (sans compter sur un compilateur C # rapide) et ne recompile / réexécute les tests unitaires qu'une fois toutes les deux heures.
Avec un C # et TDD, il était très facile d'écrire un code de manière évolutive - après une douzaine d'itérations, quelle que soit la merde avec laquelle je commençais, je finissais par un bon code, mais cela ne fonctionne plus pour moi (dans une compilation lente environnement).