Привет всем!
Есть такой паттерн Service Object. И вроде бы всё ок за исключением того что все его понимают по своему (судя по коду) из разных проектов:
CreateUser.new.call(params)
CreateUser.new(params).call
CreateUser.call(params)
.run
, .execute
, что там ещё…
Кто-то возвращает только объект или nil, кто-то заворачивает, кто-то ошибки в errors оборачивает, кто-то бросает исключения. Какая-то вакханалия.
Я решил не городить свой и посмотреть есть ли какой простенький гем который реализует этот патерн и даёт уже набор готовых модулей. Кажется что это должно быть достаточно простой гем, но писать свой я не хочу пока не выяснил что других нет.
Так вот вопрос: как вы реализуете этот патерн у себя в проекте, что используете (свой набор базовых классов или готовое). И есть ли что в dry-rb такого? (dry-rb я не использовал)