Refactoring

Refactoring

$65.99

SKU: 9780134757599
Quantity Discount
5 + $49.49

Description

  • 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

Martin Fowler is retaining everything that made Refactoring one of the world’s most popular and influential computer books, while updating with JavaScript examples throughout (to address many programmers’ current preferences) and reflecting today’s programming paradigms. The book’s catalog of individual refactorings has been updated, revised, and expanded.

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)

The classic that defined refactoring for a generation — now revised and updated by world-renowned author Martin Fowler

  • Now includes access to a rich, interactive web-based reference and catalog of refactorings bundled with both print and ebook editions
  • Integrates new JavaScript examples and up-to-date programming paradigms throughout
  • Enhanced web-based features include interactive examples, video snippets, code highlighting, and additional updates
  • First Edition sold well over 100,000 copies in English alone!

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.

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 into a good one. This book offers a thorough discussion of the principles of refactoring, including where to spot opportunities for refactoring, and how to set up the required tests. There is also a catalog of more than 40 proven refactorings with details as to when and why to use the refactoring, step by step instructions for implementing it, and an example illustrating how it works The book is written using Java as its principle language, but the ideas are applicable to any OO language.

  • The first update to a classic that is the standard reference for refactoring in over 15 years
  • Enhanced, web-based features including interactive examples, video snippets, code highlighting
  • Extensive use of JavaScript examples

Additional information

Dimensions 1.20 × 7.40 × 9.00 in
Series

Imprint

Format

ISBN-13

ISBN-10

Author

BISAC

Subjects

professional, higher education, COM051230, Employability, IT Professional, Y-AA AW PROF – PROG LANGUAGES