В «Эффективная работа с унаследованным кодом» Майкл Фезерс предлагает добавить модульные тесты для создания искусственных «точек перегиба» в коде, которые вы можете повторно учитывать.
супер краткий и полностью неполный обзор его подхода к добавлению порядка в неструктурированный код:
- разделите код на «Legacy» (без тестов) и все остальное.
- создать тест
- повторяется на обеих половинах.
Рекурсивный подход, казалось, хорошо соответствовал ментальным процессам, которые я использую при размышлении о Clojure, поэтому я пришел связать их. даже новые языки могут иметь унаследованный код, верно?
Это то, что я получил, прочитав эту книгу, размышляя о замыкании. Поэтому я надеюсь, что это полезно в качестве общего руководства. возможно, ваша кодовая база уже имеет хорошие тесты, и в этом случае вы уже находитесь за этой фазой.