Да, сталкивался. 'Красивые столбики' (Beautiful Pillars) — это антипаттерн, когда код, выполняющий похожие операции, дублируется с минимальными изменениями вместо вынесения общей логики в переиспользуемые функции или классы.
Проблемы:
- Повторение кода (DRY нарушение): Усложняет поддержку и внесение изменений.
- Риск ошибок: Изменение одной "колонки" без изменения других приводит к несогласованности и багам.
- Усложнение чтения: Большое количество почти одинакового кода затрудняет понимание общей картины.
- Увеличение объема кода: Избыточный код занимает больше места и увеличивает время компиляции.
Решения:
- Рефакторинг: Выделение общей логики в функции или методы.
- Параметризация: Использование параметров для передачи меняющихся данных.
- Шаблоны проектирования: Применение соответствующих паттернов (например, Стратегия, Шаблонный метод).
- Абстракции: Создание базовых классов или интерфейсов для общих свойств и поведения.
Пример рефакторинга:
kotlin