IT Магнитогорск
IT Магнитогорск
@magnitogorsk_it

Универсальные решения, которые не пригодились

Универсальные решения, которые не пригодились

Два похожих отчёта — и рождается конструктор отчётов. Через год в нём двадцать настроек, а каждый новый отчёт всё равно требует правок в коде.

Почему так. Обобщение требует знания, как задачи разойдутся дальше. В начале его нет.

Правило. Сначала повторите. Две похожие реализации — норма. Появилась третья, и видно общее по существу, — объединяйте.

Признаки преждевременного обобщения. Флаги, меняющие поведение функции. Настройки, используемые одним вызовом. Абстракции с единственной реализацией.

Что делать с готовым. Разделять при следующем изменении, когда правка требует нового флага. Разом переписывать — дороже и рискованнее.

И трезвость: гибкость стоит времени каждый день, а окупается редко. В системах, которые сопровождают годами разные люди, простое и явное почти всегда выигрывает у универсального и хитрого.

IT Магнитогорск — t.me/magnitogorsk_it
Этот пост опубликован в Telegram-канале IT Магнитогорск. Подписаться можно по ссылке: @magnitogorsk_it.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.