Refaktoryzacja: Ulepszanie projektu istniejącego kodu

Ocena:   (4,7 na 5)

Refaktoryzacja: Ulepszanie projektu istniejącego kodu (Martin Fowler)

Opinie czytelników

Podsumowanie:

Książka jest wysoko ceniona przez programistów za dogłębne zbadanie technik refaktoryzacji, dokładne przykłady i praktyczne spostrzeżenia. Polecana jest zarówno początkującym, jak i doświadczonym programistom, podkreślając jej znaczenie w poprawie czytelności i łatwości utrzymania kodu. Niektórzy recenzenci zwrócili jednak uwagę na jej dosadność i wyrazili pragnienie przykładów kodu w językach innych niż JavaScript.

Zalety:

Kompleksowe omówienie technik i zasad refaktoryzacji.
Przydatne zarówno dla początkujących, jak i doświadczonych programistów.
Dobrze zaprojektowana z wysokiej jakości diagramami i praktycznymi przykładami.
Autor zapewnia cenne spostrzeżenia wynikające z bogatego doświadczenia.
Nowe refaktoryzacje i zaktualizowane treści w drugim wydaniu zwiększają jego przydatność.
Działa jako dobre odniesienie do identyfikowania możliwości refaktoryzacji.

Wady:

Niektórzy uważają, że styl pisania jest rozwlekły i trudny do naśladowania.
Przykłady są głównie w JavaScript, co może nie współgrać z programistami, którzy preferują inne języki, takie jak C# lub Java.
Brak gotowego, zrefaktoryzowanego kodu dla złożonych metodologii może utrudniać zrozumienie.
Niektórzy czytelnicy uważają, że książka ta może być bardziej odpowiednia jako odniesienie niż książka do przeczytania od deski do deski.

(na podstawie 123 opinii czytelników)

Oryginalny tytuł:

Refactoring: Improving the Design of Existing Code

Zawartość książki:

Przewodnik Martina Fowlera po przerabianiu złego kodu na dobrze ustrukturyzowany.

Refaktoryzacja poprawia projekt istniejącego kodu i zwiększa łatwość utrzymania oprogramowania, a także sprawia, że istniejący kod jest łatwiejszy do zrozumienia. Martin Fowler, sygnatariusz oryginalnego Manifestu Agile i lider myśli programistycznej, dostarcza katalog refaktoryzacji, który wyjaśnia, dlaczego należy refaktoryzować; jak rozpoznać kod, który wymaga refaktoryzacji; i jak faktycznie zrobić to z powodzeniem, niezależnie od używanego języka.

⬤ Zasady refaktoryzacji: zrozumienie procesu i ogólnych zasad refaktoryzacji.

⬤ Zapachy kodu: rozpoznawanie „złych zapachów” w kodzie, które sygnalizują możliwości refaktoryzacji.

⬤ Ulepszanie aplikacji: szybkie stosowanie przydatnych refaktoryzacji w celu ułatwienia zrozumienia i zmiany programu.

⬤ Tworzenie testów: pisanie dobrych testów zwiększa efektywność programisty.

⬤ Przenoszenie funkcji: ważną częścią refaktoryzacji jest przenoszenie elementów między kontekstami.

⬤ Struktury danych: zbiór refaktoryzacji służących do organizowania danych, odgrywających ważną rolę w programach.

⬤ Logika warunkowa: użyj refaktoryzacji, aby sekcje warunkowe były łatwiejsze do zrozumienia.

⬤ API: moduły i ich funkcje są elementami składowymi naszego oprogramowania, a API są łącznikami, których używamy do łączenia ich ze sobą.

⬤ Dziedziczenie: jest zarówno bardzo przydatne, jak i łatwe do niewłaściwego użycia, a często trudno jest dostrzec niewłaściwe użycie, dopóki nie znajdzie się w lusterku wstecznym - refaktoryzacja może naprawić niewłaściwe użycie.

Przykłady są napisane w JavaScript, ale nie powinieneś mieć trudności z dostosowaniem refaktoryzacji do dowolnego języka, którego aktualnie używasz, ponieważ wyglądają one w większości tak samo w różnych językach.

Za każdym razem, gdy przeczytałeś (Refactoring), nadszedł czas, aby przeczytać go ponownie. A jeśli jeszcze go nie przeczytałeś, zrób to przed napisaniem kolejnej linii kodu.- David Heinemeier Hansson, twórca Ruby on Rails, założyciel i CTO w Basecamp.

Każdy głupiec może napisać kod zrozumiały dla komputera. Dobrzy programiści piszą kod zrozumiały dla ludzi."-M. Fowler (1999)

Dodatkowe informacje o książce:

ISBN:9780134757599
Autor:
Wydawca:
Oprawa:Twarda oprawa
Rok wydania:2019
Liczba stron:448

Zakup:

Obecnie dostępne, na stanie.

Inne książki autora:

Refaktoryzacja: Ulepszanie projektu istniejącego kodu - Refactoring: Improving the Design of...
Przewodnik Martina Fowlera po przerabianiu złego...
Refaktoryzacja: Ulepszanie projektu istniejącego kodu - Refactoring: Improving the Design of Existing Code
Języki specyficzne dla domeny - Domain-Specific Languages
Starannie dobrane i używane języki specyficzne dla domeny (DSL) mogą uprościć złożony kod,...
Języki specyficzne dla domeny - Domain-Specific Languages
Wzorce analizy: Modele obiektów wielokrotnego użytku (Paperback) - Analysis Patterns: Reusable...
Ta innowacyjna książka rozpoznaje potrzebę w...
Wzorce analizy: Modele obiektów wielokrotnego użytku (Paperback) - Analysis Patterns: Reusable Object Models (Paperback)
UML Distilled: Krótki przewodnik po standardowym języku modelowania obiektowego - UML Distilled: A...
Ponad 300 000 programistów skorzystało z...
UML Distilled: Krótki przewodnik po standardowym języku modelowania obiektowego - UML Distilled: A Brief Guide to the Standard Object Modeling Language

Prace autora wydały następujące wydawnictwa: