Найти в Дзене
155 подписчиков

Антипаттерн "Отвлечение абстракции" (Abstraction Distraction).

Этот антипаттерн про привязывания решения к внешней библиотеке или технологии. Когда библиотека, технология или решение использует и, в свою очередь, предлагает набор агрегатов, процессов или принципов реализации и вы, как архитектор или разработчик, ограниченны ими.
Пример:
Вы выбрали платформу low-code или базовую платформу для бизнес-приложений а-ля 1С, ЫФЗ? Axapta и так далее. Руководствовались принципами стабильности и экономии на рессурсов на разработку, ну например. При этом, вы получаете ровно тот набор высокоуровневых агрегатов, который вынуждены будете использовать до этапа выпиливания технологии из тех. стека компании.
Та же история про шины или потоковые базы, а-ля kafka, вы вынуждены использовать атрибуты процесса работы с данными при проектировании системы.
Что это значит для архитектора?
Ограничения технического слоя архитектур(слой приложения) ы начинает просачиваться на прикладной слой, а может и выше..
Как этого избегать:
1. Универсальная рекомендация - не придумывайте решение до завершения этапа проектирования принципов прикладного слоя.
2. По Предметно-ориентированному проектированию, используйте защитный слой.
1 минута