
Refactoring : Improving the Design of Existing Code
List price: US$59.99
Currently unavailable
We can notify you when this item is back in stock
Add to wishlistAbeBooks may have this title (opens in new window).
Try AbeBooksDescription
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. 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)
show more
Refactoring improves the design of existing code and enhances software maintainability, as well as making existing code easier to understand. 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)
show more
Product details
- Hardback | 448 pages
- 192 x 234 x 20mm | 920g
- 01 Jan 2019
- Pearson Education (US)
- Upper Saddle River, United States
- English
- 2nd edition
- 0134757599
- 9780134757599
- 5,309
Table of contents
Preface
1. Refactoring, a First Example
2. Principles in Refactoring
3. Bad Smells in Code
4. Building Tests
5. Toward a Catalog of Refactorings
6. Composing Methods
7. Moving Features between Objects
8. Organizing Data
9. Simplifying Conditional Expressions
10. Making Method Calls Simpler
11. Dealing with Generalization
12. Big Refactorings
13. Refactoring, Reuse, and Reality
14. Refactoring Tools
15. Putting It All Together
show more
1. Refactoring, a First Example
2. Principles in Refactoring
3. Bad Smells in Code
4. Building Tests
5. Toward a Catalog of Refactorings
6. Composing Methods
7. Moving Features between Objects
8. Organizing Data
9. Simplifying Conditional Expressions
10. Making Method Calls Simpler
11. Dealing with Generalization
12. Big Refactorings
13. Refactoring, Reuse, and Reality
14. Refactoring Tools
15. Putting It All Together
show more
Review Text
"Whenever you read Refactoring], it's time to read it again. And if you haven't read it...
show more
show more
About Martin Fowler
Martin Fowler is Chief Scientist at ThoughtWorks. He describes himself as "an author, speaker, consultant and general loud-mouth on software development." Fowler concentrates on designing enterprise software: exploring what makes a good design and what practices are needed to create one.
show more
show more