"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
Fully Revised and Updated—Includes New Refactoring's 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, experienced programmers worldwide have relied on Martin Fowler’s Refactoring to improve the design of existing code and to enhance software maintainability, as well as to make existing code easier to understand.
This eagerly awaited new edition has been fully updated to reflect crucial changes in the programming landscape. Refactoring, Second Edition, features an updated catalog of refactoring's and includes JavaScript code examples, as well as new functional examples that demonstrate refactoring without classes.
Like the original, this edition explains what refactoring is; why you should refactor; how to recognize code that needs refactoring; and how to actually do it successfully, no matter what language you use.
Includes free access to the canonical web edition, with even more refactoring resources. (See inside the book for details about how to access the web edition.)
"synopsis" may belong to another edition of this title.
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.
"About this title" may belong to another edition of this title.
Seller: Bay State Book Company, North Smithfield, RI, U.S.A.
Condition: good. The book is in good condition with all pages and cover intact, including the dust jacket if originally issued. The spine may show light wear. Pages may contain some notes or highlighting, and there might be a "From the library of" label. Boxed set packaging, shrink wrap, or included media like CDs may be missing. Seller Inventory # BSM.1EWPL
Seller: Austin Goodwill 1101, Austin, TX, U.S.A.
Condition: good. Book shows general signs of use and handling. May have light wear on the cover or edges and minimal writing or highlighting. Binding remains tight, and pages are clean and readable. Seller Inventory # CTXV.0134757599.G
Seller: Dream Books Co., Denver, CO, U.S.A.
Condition: very_good. Pages are clean with no markings. May show minor signs of wear or cosmetic defects marks, cuts, bends, or scuffs on the cover, spine, pages, or dust jacket. May have remainder marks on edges. Seller Inventory # DBV.0134757599.VG
Seller: ThriftBooks-Dallas, Dallas, TX, U.S.A.
Hardcover. Condition: Good. No Jacket. Missing dust jacket; Pages can have notes/highlighting. Spine may show signs of wear. ~ ThriftBooks: Read More, Spend Less. Seller Inventory # G0134757599I3N01
Seller: Goodwill Books, Hillsboro, OR, U.S.A.
Condition: good. Signs of wear and consistent use. Seller Inventory # GICWV.0134757599.G
Seller: HPB-Red, Dallas, TX, U.S.A.
Hardcover. Condition: Good. Connecting readers with great books since 1972! Used textbooks may not include companion materials such as access codes, etc. May have some wear or writing/highlighting. We ship orders daily and Customer Service is our top priority! Seller Inventory # S_480631960
Seller: Gate City Books, GREENSBORO, NC, U.S.A.
Condition: very_good. Used - Very Good: Item may have minor cosmetic defects. Seller Inventory # GCM.3PGK
Seller: World of Books (was SecondSale), Montgomery, IL, U.S.A.
Hardback. Condition: Good. 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 refactoringCode smells: recognize ?bad smells? in code that signal opportunities to refactorApplication improvement: quickly apply useful refactorings to make a program easier to comprehend and changeBuilding tests: writing good tests increases a programmer?s effectivenessMoving features: an important part of refactoring is moving elements between contextsData structures: a collection of refactorings to organize data, an important role in programsConditional Logic: use refactorings to make conditional sections easier to understandAPIs: modules and their functions are the building blocks of our software, and APIs are the joints that we use to plug them togetherInheritance: 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). Seller Inventory # 00109087199
Seller: World of Books (was SecondSale), Montgomery, IL, U.S.A.
Hardback. Condition: Very Good. 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 refactoringCode smells: recognize ?bad smells? in code that signal opportunities to refactorApplication improvement: quickly apply useful refactorings to make a program easier to comprehend and changeBuilding tests: writing good tests increases a programmer?s effectivenessMoving features: an important part of refactoring is moving elements between contextsData structures: a collection of refactorings to organize data, an important role in programsConditional Logic: use refactorings to make conditional sections easier to understandAPIs: modules and their functions are the building blocks of our software, and APIs are the joints that we use to plug them togetherInheritance: 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). Seller Inventory # 00110848123
Seller: BooksRun, Philadelphia, PA, U.S.A.
Hardcover. Condition: Very Good. 2. It's a well-cared-for item that has seen limited use. The item may show minor signs of wear. All the text is legible, with all pages included. It may have slight markings and/or highlighting. Seller Inventory # 0134757599-11-1