Refactoring is the process of improving the existing system design without changing its behavior.
重构是在不改变其行为的情况下改进现有系统设计的过程。
Besides Martin Fowler's seminal book "Refactoring - Improving the design of existing code" and Joshua Kerievsky's book "Refactoring to Patterns", are there any good resources on refactoring?
除了Martin Fowler的开创性着作“重构 - 改进现有代码的设计”和Joshua Kerievsky的书“Refactoring to Patterns”之外,还有什么好的重构资源吗?
9 个解决方案
#1
7
http://www.refactoring.com/ might help you. They have a long list of methods here:
http://www.refactoring.com/可能会帮到你。他们在这里有很多方法:
Joel's article Rub a dub dub shows you why you should refactor and not rewrite (but I guess you already knew that rewriting is a thing you should never do..)
Joel的文章Rub a dub dub告诉你为什么你应该重构而不是重写(但我想你已经知道重写是你不应该做的事情......)
#2
3
Working Effectively with Legacy Code focuses on dealing with existing code-bases that need to evolve to be testable. Many techniques are used in the book to accomplish this, and is an excellent resource for refactoring.
有效地与遗留代码协同工作着重于处理需要发展为可测试的现有代码库。书中使用了许多技术来实现这一点,并且是重构的极好资源。
#3
1
If you're looking for more than just code refactoring, you might find Scott Ambler's book quite useful: http://www.ambysoft.com/books/refactoringDatabases.html
如果您正在寻找的不仅仅是代码重构,您可能会发现Scott Ambler的书非常有用:http://www.ambysoft.com/books/refactoringDatabases.html
#4
1
Here are some Wiki pages about refactoring that explore various principles and guidelines.
以下是一些关于重构的Wiki页面,它们探讨了各种原则和指南。
#5
0
What is your codebase?
你的代码库是什么?
Eclipse has quite good support for Java. But unfortunately limited support for C++ code.
Eclipse对Java有很好的支持。但不幸的是,对C ++代码的支持有限。
Heres an article from the makers..
这是制造商的一篇文章。
#6
0
Refactoring HTML is new and relatively good, you can guess what it covers :)
重构HTML是新的,相对较好,你可以猜到它涵盖的内容:)
Other than that the two books you mention are the two I've used most, but Agile Principles is also very good.
除此之外,你提到的两本书是我最常用的两本,但敏捷原则也非常好。
#7
0
There is a 'cheat sheet' for code smells here: http://industriallogic.com/papers/
这里有代码味道的“备忘单”:http://industriallogic.com/papers/
#8
0
I would recommend reading Working Effectively with Legacy Code, then Refactoring - Improving the design of existing code. Martin Fowler's book is more like a receipt book for me, it explains how. Working effectively with legacy code, explains the why in my opinion.
我建议阅读有效使用旧版代码,然后重构 - 改进现有代码的设计。 Martin Fowler的书对我来说更像是收据簿,它解释了如何。有效地使用遗留代码,在我看来解释了原因。
below is some other books relating to refactoring:
以下是其他一些与重构有关的书籍:
antipatterns refactoring software architectures and projects in crisis
反模式重构软件架构和危机项目
refactoring in large software projects performing complex restructurings
在进行复杂重组的大型软件项目中进行重构
重构sql应用程序
#9
0
Sourcemaking - http://sourcemaking.com/refactoring
Sourcemaking - http://sourcemaking.com/refactoring
#1
7
http://www.refactoring.com/ might help you. They have a long list of methods here:
http://www.refactoring.com/可能会帮到你。他们在这里有很多方法:
Joel's article Rub a dub dub shows you why you should refactor and not rewrite (but I guess you already knew that rewriting is a thing you should never do..)
Joel的文章Rub a dub dub告诉你为什么你应该重构而不是重写(但我想你已经知道重写是你不应该做的事情......)
#2
3
Working Effectively with Legacy Code focuses on dealing with existing code-bases that need to evolve to be testable. Many techniques are used in the book to accomplish this, and is an excellent resource for refactoring.
有效地与遗留代码协同工作着重于处理需要发展为可测试的现有代码库。书中使用了许多技术来实现这一点,并且是重构的极好资源。
#3
1
If you're looking for more than just code refactoring, you might find Scott Ambler's book quite useful: http://www.ambysoft.com/books/refactoringDatabases.html
如果您正在寻找的不仅仅是代码重构,您可能会发现Scott Ambler的书非常有用:http://www.ambysoft.com/books/refactoringDatabases.html
#4
1
Here are some Wiki pages about refactoring that explore various principles and guidelines.
以下是一些关于重构的Wiki页面,它们探讨了各种原则和指南。
#5
0
What is your codebase?
你的代码库是什么?
Eclipse has quite good support for Java. But unfortunately limited support for C++ code.
Eclipse对Java有很好的支持。但不幸的是,对C ++代码的支持有限。
Heres an article from the makers..
这是制造商的一篇文章。
#6
0
Refactoring HTML is new and relatively good, you can guess what it covers :)
重构HTML是新的,相对较好,你可以猜到它涵盖的内容:)
Other than that the two books you mention are the two I've used most, but Agile Principles is also very good.
除此之外,你提到的两本书是我最常用的两本,但敏捷原则也非常好。
#7
0
There is a 'cheat sheet' for code smells here: http://industriallogic.com/papers/
这里有代码味道的“备忘单”:http://industriallogic.com/papers/
#8
0
I would recommend reading Working Effectively with Legacy Code, then Refactoring - Improving the design of existing code. Martin Fowler's book is more like a receipt book for me, it explains how. Working effectively with legacy code, explains the why in my opinion.
我建议阅读有效使用旧版代码,然后重构 - 改进现有代码的设计。 Martin Fowler的书对我来说更像是收据簿,它解释了如何。有效地使用遗留代码,在我看来解释了原因。
below is some other books relating to refactoring:
以下是其他一些与重构有关的书籍:
antipatterns refactoring software architectures and projects in crisis
反模式重构软件架构和危机项目
refactoring in large software projects performing complex restructurings
在进行复杂重组的大型软件项目中进行重构
重构sql应用程序
#9
0
Sourcemaking - http://sourcemaking.com/refactoring
Sourcemaking - http://sourcemaking.com/refactoring