🧑💻 Что нужно рефакторить? — Наследование
Предпочтительнее использовать композицию вместо наследования. К примеру, 2 дочерних класса наследуют от родительского все его методы. Если мы добавим в родительский класс метод, который нужен только для одного из дочерних классов, он автоматически будет применим и ко второму. Если же использовать инжект, дочерние классы будут независимы и не будут содержать лишнего. Конечно, все зависит от ситуации — иногда без наследования не обойтись.
Clean Code #совет #cleancode #refactoring
Предпочтительнее использовать композицию вместо наследования. К примеру, 2 дочерних класса наследуют от родительского все его методы. Если мы добавим в родительский класс метод, который нужен только для одного из дочерних классов, он автоматически будет применим и ко второму. Если же использовать инжект, дочерние классы будут независимы и не будут содержать лишнего. Конечно, все зависит от ситуации — иногда без наследования не обойтись.
Clean Code #совет #cleancode #refactoring
🧑💻 Что нужно рефакторить? — Статика
Использование статики ведет к непредсказуемости кода. Статические переменные несут глобальное состояние, данные не инкапсулированы в объекты. Изменяя эти переменные из разных мест приложения, мы не можем гарантировать корректность их состояний.
Статика приводит к процедурному программированию, тогда как в объектно-ориентированной парадигме мы инстанцируем объекты и позволяем им управлять данными как и когда это нужно. При использовании статики невозможно проектировать на основе контрактов.
Clean Code #совет #cleancode #refactoring
Использование статики ведет к непредсказуемости кода. Статические переменные несут глобальное состояние, данные не инкапсулированы в объекты. Изменяя эти переменные из разных мест приложения, мы не можем гарантировать корректность их состояний.
Статика приводит к процедурному программированию, тогда как в объектно-ориентированной парадигме мы инстанцируем объекты и позволяем им управлять данными как и когда это нужно. При использовании статики невозможно проектировать на основе контрактов.
Clean Code #совет #cleancode #refactoring
Рефакторинг унаследованного кода: как разорвать зависимости?
Как быть, если код достался в наследство без тестов, а очень хочется порефакторить? Помолиться и вперед? Или же есть инженерный подход подготовки кода к написанию тестов и безопасному рефакторингу? В рамках мастер-класса вас ждет live-coding и разбор техник разрыва зависимостей.
📺 YouTube
Clean Code #видео #refactoring
Как быть, если код достался в наследство без тестов, а очень хочется порефакторить? Помолиться и вперед? Или же есть инженерный подход подготовки кода к написанию тестов и безопасному рефакторингу? В рамках мастер-класса вас ждет live-coding и разбор техник разрыва зависимостей.
📺 YouTube
Clean Code #видео #refactoring