Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Refactoring 1st Edition
The Definitive Refactoring Guide, Fully Revamped for Ruby
With refactoring, programmers can transform even the most chaotic software into well-designed systems that are far easier to evolve and maintain. Whats more, they can do it one step at a time, through a series of simple, proven steps. Now, theres an authoritative and extensively updated version of Martin Fowlers classic refactoring book that utilizes Ruby examples and idioms throughoutnot code adapted from Java or any other environment.
The authors introduce a detailed catalog of more than 70 proven Ruby refactorings, with specific guidance on when to apply each of them, step-by-step instructions for using them, and example code illustrating how they work. Many of the authors refactorings use powerful Ruby-specific features, and all code samples are available for download.
Leveraging Fowlers original concepts, the authors show how to perform refactoring in a controlled, efficient, incremental manner, so you methodically improve your codes structure without introducing new bugs. Whatever your role in writing or maintaining Ruby code, this book will be an indispensable resource.
This book will help you
Understand the core principles of refactoring and the reasons for doing it
Recognize bad smells in your Ruby code
Rework bad designs into well-designed code, one step at a time
Build tests to make sure your refactorings work properly
Understand the challenges of refactoring and how they can be overcome
Compose methods to package code properly
Move features between objects to place responsibilities where they fit best
Organize data to make it easier to work with
Simplify conditional expressions and make more effective use of polymorphism
Create interfaces that are easier to understand and use
Generalize more effectively
Perform larger refactorings that transform entire software systems and may take months or years
Successfully refactor Ruby on Rails code
- ISBN-100321603508
- ISBN-13978-0321603500
- Edition1st
- PublisherAddison-Wesley Professional
- Publication dateJanuary 1, 2010
- LanguageEnglish
- Dimensions7.25 x 1.25 x 9.5 inches
- Print length454 pages
Customers who viewed this item also viewed
Editorial Reviews
About the Author
Jay F ields is a software developer for DRW Trading and a frequent conference presenter. Jay has a passion for discovering and maturing innovative solutions. Jays website is available at www.jayfields.com.
Shane Harvie has delivered software in Agile environments in the United States, India, and Australia. He works for DRW Trading in Chicago and blogs at www.shaneharvie.com.
Martin Fowler is Chief Scientist at ThoughtWorks and one of the worlds leading experts in the effective design of enterprise software. He has pioneered object-oriented development, patterns, agile methodologies, domain modeling, UML, and Extreme Programming. His books include Refactoring, Analysis Patterns, and UML Distilled. His book, Patterns of Enterprise Application Architecture, won Software Developments Jolt Productivity Award and Javaworld.coms best Java book award.
Product details
- Publisher : Addison-Wesley Professional; 1st edition (January 1, 2010)
- Language : English
- Hardcover : 454 pages
- ISBN-10 : 0321603508
- ISBN-13 : 978-0321603500
- Item Weight : 2 pounds
- Dimensions : 7.25 x 1.25 x 9.5 inches
- Best Sellers Rank: #1,757,637 in Books (See Top 100 in Books)
- #67 in Ruby Programming
- #718 in Object-Oriented Design
- #730 in Computer Systems Analysis & Design (Books)
- Customer Reviews:
About the authors
For all of my career I've been interested in the design and architecture of software systems, particularly those loosely classed as Enterprise Applications. I firmly believe that poor software design leads to software that is difficult to change in response to growing needs, and encourages buggy software that saps the productivity of computer users everywhere.
I'm always trying to find out what designs are effective, what approaches lead people into trouble, how we can organize our work to do better designs, and how to communicate what I've learned to more people. My books and website are all ways in which I can share what I learn and I'm glad I've found a way to make a living doing this.
Discover more of the author’s books, see similar authors, read book recommendations and more.
Discover more of the author’s books, see similar authors, read book recommendations and more.
Customer reviews
- 5 star4 star3 star2 star1 star5 star71%25%0%0%4%71%
- 5 star4 star3 star2 star1 star4 star71%25%0%0%4%25%
- 5 star4 star3 star2 star1 star3 star71%25%0%0%4%0%
- 5 star4 star3 star2 star1 star2 star71%25%0%0%4%0%
- 5 star4 star3 star2 star1 star1 star71%25%0%0%4%4%
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonTop reviews from the United States
There was a problem filtering reviews right now. Please try again later.
- Reviewed in the United States on July 8, 2013Even if you’ve read the original “Refactoring”, Ruby is original enough to find many interesting Ruby-specific approaches in this version.
And although the purely technical and immediately practical part of the book is of course invaluable, I liked the most the closing chapter 13: “Putting it all together”. I know this is may be only me, and I don’t mind that. ;)
Here is one of the take-away quotes:
“Stopping is the strongest move in the refactorer’s repertoire.”
- Reviewed in the United States on November 5, 2013A must read for any Ruby developer who isn't familiar with the specifics of refactoring. If you've heard of refactoring and think you're doing it when you move code around, you're probably doing some variation of the specific refactorings discussed in this book. You need to read this book to better understand the various kinds of refactoring that you can utilize to clean up your code base so that it's more readable and maintainable.
- Reviewed in the United States on October 25, 2009Got it yesterday and cannot detach it from my hands. I won't list a review of content here because it's on the book preview.
Techniques you might already be doing intuitively, and many you probably don't, are described with clear examples and detail helping you convert intuitive decisions into a continuous working method.
This book is a cornerstone for people who is serious about Ruby and want their code to be readable, robust, built from testing, beautiful and easy to change.
- Reviewed in the United States on January 21, 2014I wish I'd read this book years ago. I got caught up in reading new tech books, rather than books like this, that cover programming theory. Reading this and books similar to it would have spared me much frustration. Read, learn, practice, grow.
- Reviewed in the United States on May 21, 2016Excellent Ruby version of the original, much more to my liking
- Reviewed in the United States on April 23, 2014It's much better to read the original edition even if you have to translate JAVA into Ruby.
There are so many errors.
Many refactorings start at the end of a page and are immediately cut by the page. It is a very unpleasant reading experience.
Strongly recommend go for the classic JAVA edition.
Top reviews from other countries
- FredericoReviewed in Brazil on October 7, 2023
5.0 out of 5 stars Great book!
If you recently read the Java or Javascript versions of this book, you might not need this one. The catalog of refactorings is not exactly the same, but is very similar. But even if you read those (I read the Java version years ago), this book can be a satisfying reading for any Ruby developer.
And if you work with Ruby and never read the other versions, do yourself a favor and read this version. The knowledge it contains will certainly be a nice addition to any developer.
-
EduardoReviewed in Mexico on November 10, 2020
1.0 out of 5 stars En mal estado
Cuando lo recibi estaba roto parecia usado lo tuve que regresar