Рефакторинг: поліпшення існуючого коду проекту 56739

Паперова книга
56739
Рефакторинг: поліпшення існуючого коду проекту - фото 1
1'090
27 людей

Все про “Рефакторинг: поліпшення існуючого коду проекту”

Від видавця

Перевидання класичної праці з інформатики, новий сучасний переклад!

Рефакторинг вже давно і міцно займає своє гідне місце серед технологій програмування, і не в останню чергу завдяки книзі Мартіна Фаулера — однією з тих книг, які написані "на всі часи" і які, як хороше вино, з часом стають тільки цінніше.

Сам принцип рефакторінгу простий: це послідовність невеликих кроків, таких як переміщення поля з одного класу в інший, винесення фрагмента коду методу і його перетворення у самостійний метод або навіть переміщення коду по ієрархії класів. Кожен такий крок виглядає настільки просто і природно, що здається дивним — про що тут можна писати? Однак кумулятивний ефект від таких малих змін полягає в істотному поліпшенні проекту існуючого коду.

Мартін Фаулер та інші висококласні фахівці в області об'єктно-орієнтованого програмування, які взяли участь у написанні цієї книги, виклали принципи і найбільш ефективні методики виконання різних рефакторингов і показали, коли і як слід ретельно вивчати код з метою його поліпшення. У книзі докладно описано понад 70 методів рефакторінгу, причому наведено не тільки їх теоретичний опис, але й практичні приклади на мові програмування Java.

Ця класична книга варта того, щоб посісти своє місце на книжковій полиці кожного серйозного програміста — незалежно від використовуваної мови програмування.

У міру поширення об'єктних технологій — особливо з використанням мови програмування Java — для співтовариства розробників програмного забезпечення ставала все більш і більш актуальною нова проблема.

Недостатньо досвідчені розробники створили безліч погано спроектованих програм, які опинилися в результаті малопродуктивними додатками, які важко підтримувати і розширювати. Все частіше розробники програмного забезпечення стикаються з тим, наскільки складно працювати з такими дісталися їм у спадок додатками. Протягом декількох років об'єктні програмісти-експерти використовували постійно зростаючу колекцію методів підвищення структурної цілісності та ефективності існуючих програм. Відомі як "переформатування", ці практики так і залишалися надбанням експертів, тому що не робилося жодних спроб донести ці знання до широких мас розробників в доступній формі.

У цій книзі відомий експерт в області об'єктних технологій Мартін Фаулер відкриває перед спільнотою розробників нові горизонти, розповідаючи про практики, які застосовуються експертами, і демонструючи, які значні переваги від їх застосування може отримати будь-розробник. При належній підготовці кваліфікований проектувальник систем може взяти погано спроектовану програму і перетворити її в добре продуманий, надійний код. У книзі Мартін Фаулер показує читачам, де зазвичай можна знайти можливості для оптимізації і як перетворити поганий проект в хороший. Кожен крок рефакторінгу простий — навіть, здавалося б, занадто простий, щоб його варто було виконувати. Оптимізація може включати переміщення поля з одного класу в інший або витяг деякого коду методу з тим, щоб перетворити його в окремий метод, або навіть перенесення деякого коду вгору або вниз по ієрархії класів. Хоча ці окремі кроки можуть здатися елементарними, кумулятивний ефект таких невеликих змін може радикально поліпшити проект програми. Рефакторинг коду — перевірений спосіб запобігання розпаду програмного забезпечення.

Крім опису різних методів рефакторінгу, автор наводить детальний каталог з більш ніж сімдесятьма рефакторингами і корисними вказівками, які навчать вас, коли їх слід застосовувати. Книга містить докладний опис понад 70 методів рефакторінгу, причому не тільки теоретичне їх опис, але і практичні приклади на мові програмування Java. Слід врахувати, що викладені в книзі ідеї застосовні до будь об'єктно-орієнтованою мовою програмування.


Про авторів

Мартін Фаулер — незалежний консультант, який застосовує об'єктні технології для вирішення нагальних проблем бізнесу близько сорока років. Він давав консультації з програмним системам в таких областях, як охорона здоров'я, торгівля і фінанси. Серед його клієнтів були Chrysler, Citibank, Міністерство охорони здоров'я Великобританії, Andersen Consulting і Netscape Communications. Крім того, Фаулер часто робить доповіді по об'єктним технологій, уніфікованому мови моделювання UML і проектних шаблонів.

Кент Бек — відомий програміст, тестувальник ПЗ, фахівець з рефакторінгу, автор книг і гравець на банджо.

Джон Брант і Дон Робертс — автори інструментарію для автоматизованого виконання рефакторингов Refactoring Browser for Smalltalk. Вони також є консультантами, близько тридцяти років вивчали практичні та теоретичні аспекти рефакторінгу.

Дисертаційна робота Вільяма Опдайка "Дослідження з оптимізації об'єктно-орієнтованих структур", виконана в Університеті Іллінойсу, призвела до першої важливої публікації по цій темі. В даний час він працює в Lucent Technologies/Bell Laboratories.

Анотація

Рефакторинг: поліпшення існуючого коду проекту

Рецензії

0

Всі характеристики

Товар входить до категорії

  • Самовивіз з відділень поштових операторів від 45 ₴ - 80 ₴
  • Доставка поштовими сервісами - тарифи перевізника
Схожі товари
Pro Go. The Complete Guide to Programming Reliable and Efficient Software Using Golang. 1st Ed.
244721
Adam Freeman
2'500 ₴
Head First Swift. A Learner's Guide to Programming with Swift. 1st Ed.
244755
Paris Buttfield-Addison, Jon Manning
2'500 ₴
Язык программирования C# 9 и платформа .NET 5. Основные принципы и практики программирования. 10-е издание
85927
Эндрю ТроелсенФилипп Джепикс
2'600 ₴
Java: The Comprehensive Guide to Java Programming for Professionals
263483
Christian Ullenboom
2'700 ₴
Spring Boot 3 and Spring Framework 6 First Edition
263354
Christian Ullenboom
2'900 ₴
Advanced Algorithms and Data Structures
160093
Marcello La Rocca
3'000 ₴
Mastering Android NDK: Master the skills you need to develop portable, highly-functional Android applications using NDK
199178
Sergey KosarevskyVictor Latypov
3'780 ₴
C# 6.0 in a Nutshell. The Definitive Reference 6th Edition
34850
Joseph Albahari, Ben Albahari
3'795 ₴