Fork me on GitHub

Service Stub (Сервисная заглушка)

Паттерн проектирования Service Stub

Паттерн проектирования Service Stub

Описание Service Stub

Ликвидирует зависимость от внешних проблемных сервисов во время тестирования.

Enterprise-системы часто зависят от внешних сервисов, таких как, например, расчёт кредитного рейтинга, ставки налогов и т.п. Любой разработчик, который когда-либо имел дело с такими системами пожалуется на лишнюю зависимость от абсолютно неконтролируемого ресурса. Часто эти сервисы не блещут стабильностью и надёжностью.

В итоге, эти проблемы могут замедлять разработку. Разработчики вынуждены сидеть и ждать, когда удалённый сервис возобновит свою работу или встраивать в код «костыли», чтобы обходить зависимость от сервиса. Ещё хуже, когда не получается выполнять тесты - весь процесс разработки нарушается.

Замена сервиса на заглушку (Service Stub), которая выполняется локально и быстро, улучшит разработку.

Использована иллюстрация с сайта Мартина Фаулера.

Источник