Приглашаю вас вместе ознакомиться с книгой Мартина Фаулера - “Рефакторинг. Улучшение существующего кода.“ Я не ставлю целью Записать видео которое бы заменило чтение этой книги. Это скорее пояснения идей заложенных Фаулером для PHP разработчиков. Так же само название книги создают впечатление что книга научит вас рефакторингу. Что может отпугнуть часть разработчиков которые, например, изучали труды Роберта Мартина - Чистый код, Чистая архитектура. И следуя правилам этих книг проводят рефакторинг.
Эта книга на самом деле гораздо глубже чем может показаться.
Но я хочу раскрыть эту книгу с другой стороны - это учебник по эволюционному дизайну.
Как проектировать ПО с помощью рефакторинга.
*
00:00 Вступление
03:52 Знакомство с задачей
05:33 Базовое решение
14:02 Основной алгоритм решения
23:42 А можно ли оставить как есть?
27:44 Когда лучше не оставлять плохой дизайн
31:43 Работа с возражениями
32:34 Это же KISS!
39:45 Это же YAGNI!
46:49 Что такое рефакторинг?
47:15 Что такое Предварительное проектирование?
49:45 Что такое Эволюционное проектирование?
51:34 Тест на профпригодность
54:45 Основные концепции эволюционного проектирования
55:36 Когда надо заниматься рефакторингом?
58:08 Первый шаг рефакторинга
01:00:00 Байт на лайки
01:01:29 Декомпозиция и перераспределение метода statement
01:02:07 Выделение метода
01:04:35 Перемещение кода расчета суммы
01:06:42 Замена временной переменной вызовом метода
01:12:32 Выделение начисления бонусов
01:14:51 Удаление временных переменных
01:21:19 Замена условной логики на полиморфизм
01:26:29 Наконец-то... наследование
01:29:18 Реализация шаблона “Состояние“
01:36:58 Итоги содеянного
01:40:43 Переносим функционал бонусов в “состояние“
01:44:54 Обзор полученного дизайна
01:53:51 Преимущества нового дизайна
01:58:59 Рефакторинг и производительность
*
Книгу можно найти на Озоне (не реф ссылка, не реклама):
Улучшение существующего кода&from_global=true
*
#php #refactoring #designpatterns
*
Доп. литература:
- Шаблон проектирования “Стратегия“
- Роберт Мартин - Чистый код, Чистая архитектура
- Мартин Фаулер, статья “Проектирования больше нет?“
*
★ Автор: Дмитрий Афанасьев.
★ Канал:
*
► Выразить благодарность, поддержать донатом развитие канала.
★
★
*
► Еще интересные курсы:
★ Видеокурс по Laravel:
★ Видеокурс по Git:
★ Объяснение SOLID:
★ Шаблоны проектирования:
★ Структурные шаблоны проектирования:
★★★ Все курсы →
1 view
44
5
2 months ago 00:17:23 16
Микросервисы. Концепция. Первый сервис
2 months ago 00:53:17 1
Базовый курс С++ #54. Рефакторинг графических объектов
2 months ago 01:03:16 1
Рефакторинг процессов создания учебных материалов / Максим Гирин
2 months ago 01:14:11 1
Рефакторинг учебных материалов / Максим Гирин (Адаптивное обучение)
2 months ago 00:29:04 1
Работа с полиморфным поведением в большой кодовой базе / Тигран Салуев (Joom)
2 months ago 00:50:20 1
Фантастические TDD и DDD и где они обитают / Максим Морев (Газпромбанк)
2 months ago 01:55:34 1
Тяжёлый функциональный рефакторинг: как сделать код лучше и не сойти с ума / Павел Аргентов (Evrone)
2 months ago 00:44:08 1
Ныряем в легаси: набор приемов и принципов рефакторинга старья / Артем Бухонов (JetBrains)
2 months ago 00:40:18 1
Апгрейд и рефакторинг PHP-проектов — теперь это просто / Александр Володин (Skyeng)
2 months ago 00:45:13 1
How to make Legacy Refactoring Fun Again / Tomáš Votruba (Czech & Slovak PHP Community Pehapkari)
2 months ago 00:00:00 3
Golang meetup - хардкод, миграция, контракты и DDD
2 months ago 11:41:27 2
Clean Architecture (чистая архитектура, все для проекта любого размера, принципы, мышление)
2 months ago 01:15:45 1
Базовый курс С++ #51. Рефакторинг движения, этап 2
3 months ago 00:56:23 1
Базовый курс С++ #50. Рефакторинг движения, этап 1
3 months ago 00:05:06 4
Refactor To Make Code Shorter? Think Twice.
3 months ago 02:09:16 1
Сочные большие космические кораблики и остальная ху**я на Пайтоне летс гоу нах***
3 months ago 00:16:02 1
Не умею пользоваться ReadAllText, GetAll. Класс File Provider: статика и динамика #программист
3 months ago 02:26:29 1
ПОЛНЫЙ КУРС REACT JS для начинающих - Изучи Реакт за 2 часа с нуля!
3 months ago 00:58:39 1
IT_One SA Meetup: Рефакторинг документации: от хаоса к порядку
3 months ago 00:14:13 1
11 фишек по работе с кодом в 1С
3 months ago 00:30:22 1
Refactoring Shift to use Laravel’s Process facade
3 months ago 00:03:13 1
Laravel Blade Layout Components in Subfolders: Breeze Example
4 months ago 02:01:58 1
Рефакторинг и эволюционный дизайн по Фаулеру
4 months ago 02:47:00 19
Хоррор на Unreal Engine за 4 года | Разработка и релиз the Renovator: Origins | ONI Talk №1