Интеграция без Anti-Corruption Layer — это ...
Ты думаешь, что просто “подключил сервис” или “импортнул либу”… а по факту ты притащил в свою систему чужие контракты, кривые модели, странные статусы и поведение, которое вообще не обязано совпадать с твоей логикой — и дальше сидишь такой “ну вроде работает”, пока однажды это не начинает ломать тебе доменную модель изнутри
Самое мерзкое — оно не падает сразу, оно тихо протекает: поля начинают значить разное, статусы не совпадают, инварианты нарушаются, и у тебя уже не система, а гибрид Франкенштейна, где половина логики “ну потому что там так приходит”, и ты это даже не контролируешь
Лечится это не “договоримся с API” (лол, конечно договоришься), а тупо — ставишь Anti-Corruption Layer и говоришь: всё, что снаружи, — это не наша реальность, мы это мапим, валидируем, режем, и только потом пускаем внутрь; не прошло проверку — до свидания, живём без этого
Ты больше не зависишь от того, как там кто-то что-то поменял, у тебя есть своя модель, свои инварианты, и любой внешний вызов — это не “часть системы”, а подконтрольный перевод через границу, где ты решаешь, что правда, а что мусор
Если этого слоя нет — поздравляю, у тебя нет архитектуры, у тебя есть shared failure domain, только не по latency как с фолбэком, а по смыслу данных…
... — это оно просто ещё не запахло
——————
Менеджер? Давай сюда!
Ищи работу здесь
Технологии и архитектура
Post #215
389

- ❤ 3
- 👍 3