РЕФАКТОР УЛУЧШЕНИЕ СТРУКТУРЫ БРАНТОВСКИХ BEC-КОДОВ
Товар
- 0 раз купили
- 4.75 оценка
- 102 осталось
- 4 отзыва
Доставка
Характеристики
Описание
REFAKTORYZACJA ULEPSZENIE STRUKTURY KODY BRANT BECK FOWLER
Słowo wstępne (9)
Przedmowa (11)
- Czym jest refaktoryzacja? (12)
- Co zawiera ta książka? (12)
- Kto powinien przeczytać tę książkę? (13)
- Podstawowe prace wykonane przez innych (14)
- Podziękowania (14)
1. Refaktoryzacja: pierwszy przykład (17)
- Punkt wyjścia (17)
- Pierwszy krok refaktoryzacji (22)
- Dekompozycja i redystrybucja metody statement (22)
- Zastąpienie warunkowej logiki wyznaczania ceny polimorfizmem (39)
- Podsumowanie (48)
2. Zasady refaktoryzacji (49)
- Definicja refaktoryzacji (49)
- Po co refaktoryzować? (50)
- Kiedy refaktoryzować? (52)
- Co mam powiedzieć kierownikowi? (54)
- Problemy z refaktoryzacją (56)
- Refaktoryzacja a projektowanie (59)
- Refaktoryzacja a wydajność (61)
- Skąd się wzięła refaktoryzacja? (62)
3. Brzydkie zapaszki w kodzie (65)
- Zduplikowany kod (66)
- Długa metoda (66)
- Duża klasa (67)
- Długa lista parametrów (68)
- Rozbieżne zmiany (68)
- Fala uderzeniowa (69)
- Zazdrosne metody (69)
- Stada danych (69)
- Opętanie prymitywami (70)
- Instrukcje switch (70)
- Równoległe hierarchie dziedziczenia (71)
- Leniwa klasa (71)
- Spekulacyjne uogólnienia (71)
- Pole tymczasowe (72)
- Łańcuchy komunikatów (72)
- Pośrednik (73)
- Niestosowna bliskość (73)
- Alternatywne klasy z różnymi interfejsami (73)
- Niekompletna klasa biblioteczna (73)
- Klasa opakowująca dane (74)
- Odmowa przyjęcia spadku (74)
- Uwagi (75)
4. Testy (77)
- Zalety samotestującego się kodu (77)
- Testy jednostkowe JUnit (79)
- Więcej testów (84)
5. Katalog przekształceń refaktoryzacyjnych (89)
- Format opisu przekształceń (89)
- Odnajdywanie odwołań (90)
- Dojrzałość przekształceń (91)
6. Konstrukcja metod (93)
- Ekstrakcja Metody (94)
- Wchłonięcie Metody (100)
- Wchłonięcie Zmiennej Tymczasowej (102)
- Zastąpienie Zmiennej Tymczasowej Zapytaniem (103)
- Wprowadzenie Zmiennej Objaśniającej (107)
- Podział Zmiennej Tymczasowej (111)
- Eliminacja Przypisywania Wartości Parametrom (114)
- Zastąpienie Metody Obiektem (118)
- Zastąpienie Algorytmu (121)
7. Przenoszenie składowych pomiędzy obiektami (123)
- Przeniesienie Metody (124)
- Przeniesienie Pola (128)
- Ekstrakcja Klasy (131)
- Wchłonięcie Klasy (135)
- Ukrycie Delegata (138)
- Usunięcie Pośrednika (141)
- Wprowadzenie Obcej Metody (143)
- Wprowadzenie Rozszerzenia Lokalnego (145)
8. Organizacja danych (151)
- Samoenkapsulacja Pola (153)
- Zastąpienie Typu Prostego Obiektem (156)
- Zamiana Wartości na Referencję (159)
- Zamiana Referencji na Wartość (163)
- Zastąpienie Tablicy Obiektem (166)
- Duplikacja Obserwowanych Danych (169)
- Zamiana Asocjacji Jednokierunkowej na Dwukierunkową (176)
- Zamiana Asocjacji Dwukierunkowej na Jednokierunkową (179)
- Zastąpienie Magicznej Liczby Stałą Symboliczną (183)
- Enkapsulacja Pola (184)
- Enkapsulacja Kolekcji (185)
- Zastąpienie Rekordu Klasą z Danymi (193)
- Zastąpienie Kodu Typu Klasą (194)
- Zastąpienie Kodu Typu Podklasami (199)
- Zastąpienie Kodu Typu Wzorcem Stan lub Strategia (202)
- Zastąpienie Podklasy Polami (207)
9. Upraszczanie wyrażeń warunkowych (211)
- Dekompozycja Instrukcji Warunkowej (212)
- Scalenie Instrukcji Warunkowej (214)
- Scalenie Zduplikowanych Fragmentów Instrukcji Warunkowej (217)
- Usunięcie Flagi Kontrolnej (219)
- Zastąpienie Zagnieżdżonej Instrukcji Warunkowej Instrukcją Wyjścia (224)
- Zastąpienie Instrukcji Warunkowej Polimorfizmem (229)
- Wprowadzenie Obiektu Pustego (233)
- Wprowadzenie Asercji (240)
10. Upraszczanie wywołań metod (243)
- Zmiana Nazwy Metody (245)
- Dodanie Parametru (247)
- Usunięcie Parametru (249)
- Rozdzielenie Zapytania i Modyfikacji (251)
- Parametryzacja Metody (255)
- Zastąpienie Parametru Metodami o Różnych Nazwach (257)
- Przekazanie Całego Obiektu (260)
- Zastąpienie Parametru Metodą (263)
- Wprowadzenie Obiektu Parametrycznego (266)
- Usunięcie Metody Ustawiającej Wartość (270)
- Ukrycie Metody (273)
- Zastąpienie Konstruktora Metodą Wytwórczą (274)
- Enkapsulacja Rzutowania w Dół Hierarchii (278)
- Zastąpienie Kodu Błędu Wyjątkiem (280)
- Zastąpienie Wyjątku Testem (285)
11. Praca z hierarchią dziedziczenia (289)
- Przesunięcie Pola w Górę Hierarchii (290)
- Przesunięcie Metody w Górę Hierarchii (291)
- Przesunięcie Ciała Konstruktora w Górę Hierarchii (294)
- Przesunięcie Metody w Dół Hierarchii (297)
- Przesunięcie Pola w Dół Hierarchii (298)
- Ekstrakcja Podklasy (299)
- Ekstrakcja Nadklasy (304)
- Ekstrakcja Interfejsu (308)
- Zwinięcie Hierarchii (311)
- Utworzenie Metody Szablonowej (312)
- Zastąpienie Dziedziczenia Delegacją (319)
- Zastąpienie Delegacji Dziedziczeniem (322)
12. Duże przekształcenia (325)
- Rozplątanie Hierarchii Dziedziczenia (327)
- Przekształcenie Projektu Proceduralnego na Obiekty (332)
- Oddzielenie Dziedziny od Prezentacji (334)
- Ekstrakcja Hierarchii (338)
13. Refaktoryzacja i reużywalność a rzeczywistość (343)
- Zejście na ziemię (344)
- Dlaczego programiści nie chcą refaktoryzować własnych programów? (345)
- Zejście na ziemię (raz jeszcze) (354)
- Materiały na temat refaktoryzacji (355)
- Sugestie na temat wielokrotnego wykorzystania kodu i transferu technologii (355)
- Na koniec (356)
- Bibliografia (356)
14. Narzędzia refaktoryzacyjne (359)
- Refaktoryzacja z wykorzystaniem narzędzia (359)
- Techniczne kryteria narzędzia refaktoryzacyjnego (360)
- Praktyczne kryteria narzędzia refaktoryzacyjnego (362)
- Podsumowanie (363)
15. Wykorzystanie zdobytej wiedzy (365)
Bibliografia (369)
Lista refaktoryzacji (373)
Brzydkie zapaszki i ich przekształcenia (375)
Гарантии
Гарантии
Мы работаем по договору оферты и предоставляем все необходимые документы.
Лёгкий возврат
Если товар не подошёл или не соответсвует описанию, мы поможем вернуть его.
Безопасная оплата
Банковской картой, электронными деньгами, наличными в офисе или на расчётный счёт.