Refactoring

By Martin Fowler,

Book cover of Refactoring: Improving the Design of Existing Code

Book description

Refactoring is about improving the design of existing code. It is the process of changing a software system in such a way that it does not alter the external behavior of the code, yet improves its internal structure. With refactoring you can even take a bad design and rework it…

Shepherd is reader supported. When you buy books, we may earn an affiliate commission.

Why read it?

2 authors picked Refactoring as one of their favorite books. Why do they recommend it?

This book is different from the others I recommended, because its focus is not really on creating algorithms, but rather on how to improve code with a systematic process, keeping functionality but enhancing quality.

The author shows several practical techniques that he applies to real-world problems and empower you to elevate your code's quality and adapt it seamlessly to changing needs. It's not just about writing code; it's about becoming a more effective and confident developer.

I consider this book a companion on the journey to mastering the craft of coding. With it, you’ll always be able to achieve higher-quality…

What does refactoring have to do with domain modeling in functional programming?

It turns out that the very essence of code improvement is closely tied to enhancing its capability to handle the intricacies of a specific domain. This implies that even when refactoring a domain-agnostic mechanism in our code, our objective is to address previously inaccessible aspects of the domain.

Another important aspect of refactoring is that functional languages make it more desirable and safer, thanks to core principles such as purity and immutability.

Although there might not be an abundance of books on domain modeling in functional programming, I…

From Alexander's list on domain modeling.

Want books like Refactoring?

Our community of 11,000+ authors has personally recommended 83 books like Refactoring.

Browse books like Refactoring

5 book lists we think you will like!

Interested in object-oriented programming, computer programming, and software?

Software 61 books