Jump to ratings and reviews

Addison-Wesley Professional Ruby Series

Refactoring: Improving the Design of Existing Code

As the application of object technology—particularly the Java programming language—has become commonplace, a new problem has emerged to confront the software development community. Significant numbers of poorly designed programs have been created by less-experienced developers, resulting in applications that are inefficient and hard to maintain and extend. Increasingly, software system professionals are discovering just how difficult it is to work with these inherited, non-optimal applications. For several years, expert-level object programmers have employed a growing collection of techniques to improve the structural integrity and performance of such existing software programs. Referred to as refactoring, these practices have remained in the domain of experts because no attempt has been made to transcribe the lore into a form that all developers could use... until now. In Refactoring: Improving the Design of Existing Software, renowned object technology mentor Martin Fowler breaks new ground, demystifying these master practices and demonstrating how software practitioners can realize the significant benefits of this new process.

431 pages, Hardcover

First published January 1, 1999

Loading...
Loading...

About the author

Martin Fowler

46 books1,127 followers
Martin Fowler (b. 1963) is a software engineer, Chief Scientist at ThoughtWorks, and an outspoken advocate for best practices in enterprise software design, particularly in regard to agile software development methodologies, including extreme programming.

Ratings & Reviews

What do you think?

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
4,121 (46%)
4 stars
3,199 (36%)
3 stars
1,223 (13%)
2 stars
250 (2%)
1 star
90 (1%)
Displaying 1 - 1 of 1 review
Profile Image for Gabrielam13.
181 reviews27 followers
May 26, 2019
Enorma mea admirație față de Uncle Bob s-a mai diminuat puțin citind această carte, deoarece am înțeles care este sursa ideilor sale de ”clean code”, de mirosuri neplăcute ale codului, ba chiar și exemplului său didactic cu pălăriile. Și deși nici Martin Fowler nu este adevăratul autor al mult îndrăgitelor idei de refactorizare, ci Kent Beck, cu toții fac parte dintr-un curent mai larg care a luat naștere în lumea Smalltalk-ului.

Am savurat foarte mult această carte nu numai datorită faptului că ideile care promovează refactoring-ul sunt foarte clar explicate și exemplificate prin linii de cod ușor de înțeles, prezentând motivația din spatele lor, cât și situațiile când nu sunt recomandate, cât mai ales datorită umorului lui Fowler. A citi o carte tehnică și a râde nu este o situație tocmai obișnuită, dar asta mi s-a întâmplat. Fraze precum ”Leaving nots in a conditional like that twists my mind at a painful angle”, ”He kindly came up with an example to save further tax of my imagination”, ”I usually run away screaming from the instanceof operator”, ”This is the demon Obfuscatis speaking; purge him from your soul” sau ”It’s more than a little ironic that many of us preach safety first to our children, nieces and nephews, but in our roles as programmers scream for freedom, a hybrid of the Wild West gunslinger and teenage driver. Give us freedom, give us the resources, and watch us.” nu pot să nu îți aducă zâmbetul pe buze.

Și deși ”Refactoring. Improving the design of existing code” a fost publicată cu douăzeci de ani în urmă, ceea ce în lumea software developmentului o face un dinozaur, ea este încă de actualitate. Desigur că astăzi aplicăm ideile lui Fowler în mod curent fără nicio dificultate, datorită IDE-urilor care fac redenumirile, extragerea funcțiilor, a parametrilor etc. ca o joacă de copii. Dar m-am simțit ca un istoric care descoperă obstacolele cu care aveau de luptat oamenii în trecut, precum enorma grijă pe care trebuia să o ai pentru a găsi toate referințele unei funcții atunci când îți doreai să o redenumești. Sau ca un istoric care are plăcuta surpriză de a afla că ideile unor pionieri au prins într-adevăr viață, căci tool-urile care fac viața developerilor mai ușoară în privința refactoringului, despre care vorbește destul de mult autorul, au înflorit într-adevăr și nu îmi imaginez cum mi-ar fi viața de zi cu zi fără Resharper.

Mi-a plăcut cărticica, mi-a plăcut autorul și cred că merită citită și în ziua de astăzi nu numai ca și curiozitate intelectuală, căci în ciuda faptului că elementul de noutate nu este așa de pronunțat, chiar am învățat și redescoperit nenumărate idei valoroase care ajută la menținerea curățeniei și flexibilității designului tuturor aplicațiilor software.
Displaying 1 - 1 of 1 review