
Refactoring
Improving the Design of Existing Code
Pearson Education · Print & ebook · November 19, 2018
Martin Fowler’s guide to reworking bad code into well-structured code Refactoring improves the design of existing code and enhances software maintainability, as well as making existing code easier to understand.
We earn from qualifying purchases.
- Who it’s for
- A practical guide to reshaping existing code so it’s easier to understand, maintain, and change.
- Themes
- Code maintainability, Readable software design, Refactoring practices
- Genres
- Software Development, Object-Oriented Programming, Testing & QA
Nearest books
Matched by what the books are about, then ordered by what their readers also loved.
Head First Design PatternsEric Freeman, Elisabeth Robson58% matchShares Object-Oriented Programming
Code CompleteSteve McConnell59% matchShares Software Development and Testing & QA
Test Driven DevelopmentKent Beck55% matchShares Testing & QA
Domain-driven DesignEric Evans62% matchShares Software Development and Object-Oriented Programming
Growing Object-oriented Software, Guided by TestsSteve Freeman, Nat Pryce62% matchShares Object-Oriented Programming and Testing & QA
Clean CodeRobert C. Martin72% matchShares Software Development and Object-Oriented Programming
Release It!Michael Nygard, Michael T. Nygard55% matchShares Testing & QA
Software Architecture: the Hard PartsNeal Ford, Mark Richards49% match
Start with three books, and this one can be the first.
Members get a new edition every morning: a route out from their books to essays, research and talks, with the reason for each.
Start with this bookAbout this book
Martin Fowler’s guide to reworking bad code into well-structured code Refactoring improves the design of existing code and enhances software maintainability, as well as making existing code easier to understand.
Continue reading
Original Agile Manifesto signer and software development thought leader, Martin Fowler, provides a catalog of refactorings that explains why you should refactor; how to recognize code that needs refactoring; and how to actually do it successfully, no matter what language you use. - Refactoring principles: understand the process and general principles of refactoring - Code smells: recognize “bad smells” in code that signal opportunities to refactor - Application improvement: quickly apply useful refactorings to make a program easier to comprehend and change - Building tests: writing good tests increases a programmer’s effectiveness - Moving features: an important part of refactoring is moving elements between contexts - Data structures: a collection of refactorings to organize data, an important role in programs - Conditional Logic: use refactorings to make conditional sections easier to understand - APIs: modules and their functions are the building blocks of our software, and APIs are the joints that we use to plug them together - Inheritance: it is both very useful and easy to misuse, and it’s often hard to see the misuse until it’s in the rear-view mirror---refactorings can fix the misuse Examples are written in JavaScript, but you shouldn’t find it difficult to adapt the refactorings to whatever language you are currently using as they look mostly the same in different languages. "Whenever you read [Refactoring], it’s time to read it again. And if you haven’t read it yet, please do before writing another line of code." –David Heinemeier Hansson, Creator of Ruby on Rails, Founder & CTO at Basecamp “Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” –M. Fowler (1999)
Make Code Clearer
A practical guide to reshaping existing code so it’s easier to understand, maintain, and change.
Come here for
- Spotting code smells and choosing useful refactorings
- Improving tests, data structures, APIs, and conditional logic
Expect
- A catalog of refactorings, with examples written in JavaScript
- Principles you can adapt across programming languages
Where it sits
| Testing & QA | 46% |
|---|---|
| Software Development | 38% |
| Object-Oriented Programming | 27% |
Percentages are BookFrontier’s reading of the book.
Publisher categories
- Object-Oriented Programming
- Software Development
- Authors
- Martin Fowler
- Publisher
- Pearson Education
- Published
- November 19, 2018
- Format
- Print & ebook
- Theme
- Code maintainability · Readable software design · Refactoring practices
- Reading lane
- Object-Oriented Programming