Категорії
Електронні книги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комп'ютер в офісі
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Мультимедійне навчання
- Нерухомість
- Переконання та НЛП
- Податки
- Соціальна політика
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Звіти, аналізи
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Електронна преса
- Architektura i wnętrza
- Biznes i Ekonomia
- Будинок та сад
- Електронний бізнес
- Фінанси
- Особисті фінанси
- Бізнес
- Фотографія
- Інформатика
- Відділ кадрів та оплата праці
- Комп'ютери, Excel
- Бухгалтерія
- Культура та література
- Наукові та академічні
- Охорона навколишнього середовища
- Впливові
- Освіта
- Податки
- Подорожі
- Психологія
- Релігія
- Сільське господарство
- Ринок книг і преси
- Транспорт та спедиція
- Здоров'я та краса
-
Історія
-
Інформатика
- Офісні застосунки
- Бази даних
- Біоінформатика
- Бізнес ІТ
- CAD/CAM
- Digital Lifestyle
- DTP
- Електроніка
- Цифрова фотографія
- Комп'ютерна графіка
- Ігри
- Хакування
- Hardware
- IT w ekonomii
- Наукові пакети
- Шкільні підручники
- Основи комп'ютера
- Програмування
- Мобільне програмування
- Інтернет-сервери
- Комп'ютерні мережі
- Стартап
- Операційні системи
- Штучний інтелект
- Технологія для дітей
- Вебмайстерність
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Оповідна поезія
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Шкільні підручники
-
Науково-популярна та академічна
- Археологія
- Bibliotekoznawstwo
- Кінознавство / Теорія кіно
- Філологія
- Польська філологія
- Філософія
- Finanse i bankowość
- Географія
- Економіка
- Торгівля. Світова економіка
- Історія та археологія
- Історія мистецтва і архітектури
- Культурологія
- Мовознавство
- літературні студії
- Логістика
- Математика
- Ліки
- Гуманітарні науки
- Педагогіка
- Навчальні засоби
- Науково-популярна
- Інше
- Психологія
- Соціологія
- Театральні студії
- Богослов’я
- Економічні теорії та науки
- Transport i spedycja
- Фізичне виховання
- Zarządzanie i marketing
-
Порадники
-
Ігрові посібники
-
Професійні та спеціальні порадники
-
Юридична
- Безпека життєдіяльності
- Історія
- Дорожній кодекс. Водійські права
- Юридичні науки
- Охорона здоров'я
- Загальне, компендіум
- Академічні підручники
- Інше
- Закон про будівництво і житло
- Цивільне право
- Фінансове право
- Господарське право
- Господарське та комерційне право
- Кримінальний закон
- Кримінальне право. Кримінальні злочини. Кримінологія
- Міжнародне право
- Міжнародне та іноземне право
- Закон про охорону здоров'я
- Закон про освіту
- Податкове право
- Трудове право та законодавство про соціальне забезпечення
- Громадське, конституційне та адміністративне право
- Кодекс про шлюб і сім'ю
- Аграрне право
- Соціальне право, трудове право
- Законодавство Євросоюзу
- Промисловість
- Сільське господарство та захист навколишнього середовища
- Словники та енциклопедії
- Державні закупівлі
- Управління
-
Путівники та подорожі
- Африка
- Альбоми
- Південна Америка
- Центральна та Північна Америка
- Австралія, Нова Зеландія, Океанія
- Австрія
- Азії
- Балкани
- Близький Схід
- Болгарія
- Китай
- Хорватія
- Чеська Республіка
- Данія
- Єгипет
- Естонія
- Європа
- Франція
- Гори
- Греція
- Іспанія
- Нідерланди
- Ісландія
- Литва
- Латвія
- Mapy, Plany miast, Atlasy
- Мініпутівники
- Німеччина
- Норвегія
- Активні подорожі
- Польща
- Португалія
- Інше
- Росія
- Румунія
- Словаччина
- Словенія
- Швейцарія
- Швеція
- Світ
- Туреччина
- Україна
- Угорщина
- Велика Британія
- Італія
-
Психологія
- Філософія життя
- Kompetencje psychospołeczne
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Аудіокниги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Нерухомість
- Переконання та НЛП
- Податки
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Історія
-
Інформатика
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Науково-популярна та академічна
-
Порадники
-
Професійні та спеціальні порадники
-
Юридична
-
Путівники та подорожі
-
Психологія
- Філософія життя
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Відеокурси
-
Бази даних
-
Big Data
-
Biznes, ekonomia i marketing
-
Кібербезпека
-
Data Science
-
DevOps
-
Для дітей
-
Електроніка
-
Графіка / Відео / CAX
-
Ігри
-
Microsoft Office
-
Інструменти розробки
-
Програмування
-
Особистісний розвиток
-
Комп'ютерні мережі
-
Операційні системи
-
Тестування програмного забезпечення
-
Мобільні пристрої
-
UX/UI
-
Веброзробка, Web development
-
Управління
Подкасти
- Електронні книги
- Програмування
- Методи програмування
- Refaktoryzacja. Ulepszanie struktury istniejącego kodu
Деталі електронної книги
Refaktoryzacja. Ulepszanie struktury istniejącego kodu
Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts, Erich Gamma
Pierwszy podręcznik tak gruntownie i przejrzyście wyjaśniający najlepsze praktyki oraz techniki refaktoryzacji!
- Jak identyfikować błędy i problemy z istniejącym kodem?
- Jak poprawiać spójność, czytelność i wydajność kodu?
- Jak przekształcać kod bez ryzyka wprowadzania błędów?
- Jak skutecznie wykorzystywać przekształcenia refaktoryzacyjne?
Jak ryzykowne jest grzebanie w kodzie - wszyscy doskonale wiemy. Im głębiej sięgasz… tym więcej pojawia się nowych problemów i jeszcze więcej rzeczy wymaga zmian. A nieustanne "poprawianie" działającego kodu może w końcu doprowadzić do powstania trudno wykrywalnych, krytycznych błędów. Jednak co zrobić, jeśli "odziedziczymy" nieefektywny, trudny w utrzymaniu i rozszerzaniu program? Jak poprawić jego strukturalną spójność i wydajność? Wypracowywane latami przez najlepszych ekspertów techniki refaktoryzacji, czyli ulepszania projektu istniejącego kodu, są dziś sprawdzonymi rozwiązaniami, zapewniającymi jego trwałą czytelność i możliwość efektywnego rozwoju. Opracowane głównie na potrzeby frameworków, są obecnie narzędziem wykorzystywanym dla całego procesu produkcji oprogramowania. Jednak dla wielu programistów proces refaktoryzacji pozostaje wiedzą tajemną, bo jak dotąd żaden podręcznik nie przedstawił używanych przy tym technik w praktycznej, łatwej do wykorzystania formie. A przecież przeprowadzona błędnie lub w zbytnim pośpiechu refaktoryzacja zamiast ulepszenia kodu może kosztować nas dodatkowe dni lub całe tygodnie stresującej pracy nad programem.
Oto podręcznik, w którym słynny mentor i programistyczny guru Martin Fowler wraz z kilkoma innymi znanymi programistami podejmują się pierwszego tak gruntownego i przejrzystego objaśnienia technik związanych ze skutecznym procesem refaktoryzacji. Książka ta przedstawia zasady i najlepsze praktyki refaktoryzacyjne oraz zawiera wskazówki na temat tego, kiedy i jak zacząć ingerować w kod. Znajdziesz tu wyczerpujący katalog siedemdziesięciu przekształceń refaktoryzacyjnych. Każdemu z nich towarzyszą wskazówki dotyczące możliwości wykorzystania, instrukcja opisująca kolejne kroki oraz przykład. Ten podręcznik pokaże Ci zatem, jak przekształcać kod w sposób kontrolowany i efektywny, jak refaktoryzować go bez wprowadzania błędów, konsekwentnie ulepszając jego strukturę, oraz jak skutecznie go testować. Choć przedstawione w książce przykłady zostały napisane w języku Java, idee te znajdą zastosowanie w każdym innym języku obiektowym. Ponadto w opisach części przekształceń dodano uwagi związane z ich stosowaniem w innych językach.
W książce tej znajdziesz między innymi opis takich zagadnień, jak:
- zasady refaktoryzacji
- identyfikowanie błędów i problemów z kodem
- testowanie
- katalog przekształceń refaktoryzacyjnych
- konstrukcja metod
- przenoszenie składowych pomiędzy obiektami
- organizacja danych
- upraszczanie wyrażeń warunkowych i wywołań metod
- praca z hierarchią dziedziczenia
- duże przekształcenia
- refaktoryzacja i reużywalność
- narzędzia refaktoryzacyjne
Poznaj sprawdzone techniki ulepszania istniejącego kodu!
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)
Skorowidz (377)
- Назва: Refaktoryzacja. Ulepszanie struktury istniejącego kodu
- Автор: Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts, Erich Gamma
- Оригінальна назва: Refactoring: Improving the Design of Existing Code
- Переклад: Justyna Walkowska
- ISBN: 978-83-283-3456-4, 9788328334564
- Дата видання: 2011-10-28
- Формат: Eлектронна книга
- Ідентифікатор видання: refukv
- Видавець: Helion