Home > Store

Refactoring: Improving the Design of Existing Code, Rough Cuts, 2nd Edition

Rough Cuts

  • Available to Safari Subscribers
  • About Rough Cuts
  • Rough Cuts are manuscripts that are developed but not yet published, available through Safari. Rough Cuts provide you access to the very latest information on a given topic and offer you the opportunity to interact with the author to influence the final publication.

Not for Sale

Also available in other formats.

Description

  • Copyright 2019
  • Dimensions: 7-3/8" x 9-1/4"
  • Edition: 2nd
  • Rough Cuts
  • ISBN-10: 0-13-475793-9
  • ISBN-13: 978-0-13-475793-3

This is the Rough Cut version of the printed book.


The Definitive Guide to Refactoring: Updated and Expanded, with New Refactorings and Code Examples 

“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.”
—M. Fowler (1999)

For more than twenty years, professional programmers worldwide have relied on Martin Fowler’s Refactoring to improve the design of existing code and enhance software maintainability. This eagerly awaited revision has been fully updated to reflect crucial changes in the programming landscape since the first edition.

Refactoring, Second Edition, features an updated catalog of refactorings and includes JavaScript code examples as well as new functional examples that demonstrate refactoring without classes.

Like the original, this new edition explains what refactoring is, why you should refactor, how to recognize code that needs refactoring, and how to actually do it. Whatever language you use, Fowler’s explanations and examples will help you refactor successfully.

  • Understand the process of refactoring
  • Quickly apply useful refactorings to make a program easier to comprehend and change
  • Discover the general principles of refactoring
  • Recognize tradeoffs and obstacles to refactoring
  • Recognize “bad smells” in code that signal opportunities to refactor
  • Build solid tests for your refactorings
  • Explore the refactorings, each with explanations, motivation, mechanics, and simple examples

Sample Content

Table of Contents

Foreword to the First Edition

Preface


Chapter 1: Refactoring: A First Example

Chapter 2: Principles in Refactoring

Chapter 3: Bad Smells in Code

Chapter 4: Building Tests

Chapter 5: Introducing the Catalog

Chapter 6: A First Set of Refactorings

Chapter 7: Encapsulation

Chapter 8: Moving Features

Chapter 9: Organizing Data

Chapter 10: Simplifying Conditional Logic

Chapter 11: Refactoring APIs

Chapter 12: Dealing with Inheritance

Bibliography

Index

Updates

Submit Errata

More Information