TDD на самом деле не о тестировании, а о проектировании. Использование TDD для вашего приложения сделает его лучше (вероятно), чем просто делает его по вашему вкусу.
Ваша проблема: вам нужен хороший дизайн? Проектирование полезно для сопровождения, и большинство разработчиков, использующих TDD, считают себя в режиме сопровождения сразу после добавления их первой функции.
С более прагматичной точки зрения: если вы единственный разработчик, имеете очень точные спецификации и работаете над этим кодом, чтобы делать это и никогда не возвращаться к нему (и не отправлять кому-то еще возвращаться к нему), я бы сказал, что создание этого работы достаточно.
Но тогда не пытайтесь получить от него что-либо, если ваш POC работает, и просто переделайте это.
- Вы можете сэкономить время, выполняя некрасивый POC, и придете к выводу, что ваша идея неосуществима.
- Вы можете сэкономить время, сделав уродливый POC и намного лучше понимая область, которую вы пытаетесь смоделировать
- Вы не можете сэкономить время, пытаясь извлечь несколько строк кода из ужасной кодовой базы.
Мой лучший совет для оценки того, сколько усилий вы должны приложить к дизайну (потому что чрезмерный дизайн тоже может быть большой проблемой): попытайтесь оценить, как долго будет жить этот код
Справка: Я бы посоветовал вам провести исследование под девизом «Сделайте так, чтобы это работало, сделайте это правильно, сделайте это быстро» . Вопрос, который вы задаете, касается двух первых пунктов, но вы рано или поздно зададите себе тот же вопрос об оптимизации (третий пункт)