20. 1. Object coupling - сильная связанность объектов
2. Сложность повторного использования объектов
3. Сложность покрытия тестами
4. Нарушение KISS и SOLID (IMHO)
20
21. Задача с квадратом и прямоугольником
Дан класс реализующий квадрат и класс
реализующий прямоугольник. Какой класс вы бы
наследовали от какого или предложили бы другой
вариант решения?
21
28. ✅ Правильный ответ
Если наследование: создать абстрактный класс
Figure и наследоваться от него.
Не использовать наследование. Использовать
композицию и команду.
👯👯♂Лучший ответ
28
32. R.
Мистер “R” Repository
● ✅ Работает с коллекцией объектов
● 👎 У него много “связей” с другими
объектами
● ✅ Хорош в WebAPI
● 👎 Супер тяж: подгружает множество
зависимостей
● 💩 Может быть stateful
32
34. А ничего не видно потому, что construct тяжелее Сатурна
24 зависимости 🤦♂🤦
34
35. И при чем тут наследование?
● Наследование у mr. R в Resource models
● Abstract models - часто наследуют в бизнес
моделях
● Collection наследуют AbstractCollection
35
36. Мистер “C” Command
● ✅ Одно сплошное действие
● ✅ Простой и надежный
C.
● ✅ Никому не рассказывает что
делает реализация
● ✅ С ним легко читать код
потому, что его имя говорит
само за себя
● ✅ Stateles 😘
36