mik*_*era 26 refactoring clojure
我熟悉在C#和Java中重构相当大的代码库,但Clojure是一个不同的野兽,特别是因为它:
鉴于上述情况,在Clojure中进行代码重构的最佳方法是什么?
在"有效地使用遗留代码"中, Michael Feathers建议添加单元测试以在代码中创建人为的"拐点",您可以重新考虑它们.
关于为非结构化代码添加顺序的方法的超级简短且完全不完整的概述:
递归方法似乎与我在思考Clojure时使用的心理过程非常吻合,所以我来联想它们.甚至新语言都可以拥有遗留代码吗?
这是我在阅读那本书的同时考虑到clojure时得到的.所以我希望它作为一般指导方针是有用的.也许你的代码库已经有了很好的测试,在这种情况下你已经超出了这个阶段.
我不是专家.但无论如何:
God
职能.如果你有一个很大的功能,那就把它分解成更小的函数,每个函数都做一件事,而且它做得很好.defrecord
和defprotocol
.另外,看看CursiveClojure.我认为这很有希望.
我不是CursiveClojure的创造者.