Я звик кодувати в C # в стилі TDD - написати / або змінити невеликий шматок коду, за 10 секунд заново скомпілювати все рішення, повторно запустити тести і знову. Легко ...
Ця методологія розвитку працювала для мене дуже добре протягом кількох років, до минулого року, коли мені довелося повернутися до кодування C ++, і справді відчуваю, що з цього часу моя продуктивність різко знизилася. C ++ як мова не є проблемою - у мене було досить багато досвіду розробки C ++ ... але в минулому.
Моя продуктивність все ще гаразд для невеликих проектів, але вона стає гіршою, коли зі збільшенням розміру проекту і одного разу час компіляції досягає 10+ хвилин, він стає дуже поганим. І якщо я виявлю помилку, мені доведеться знову починати компіляцію і т. Д. Це просто розчаровує.
Таким чином, я зробив висновок, що в невеликих фрагментах (як і раніше) не прийнятно - будь-які рекомендації, як я можу потрапити на стару зниклу звичку кодування протягом години або близько того, переглядаючи код вручну (не покладаючись на швидкий компілятор C #) , і лише перекомпіляція / повторне тестування модуля раз на пару годин.
З C # і TDD було дуже просто написати код еволюційним шляхом - після десятка ітерацій будь-яке лайно, з якого я починався, закінчувалося хорошим кодом, але це просто не працює для мене (у повільній компіляції) середовище).