Структура плагинов
Коллеги.
Уже в паре плагинов ломаю голову над их структурной организацией и никак не могу прийти к оптимальному для себя решению.
У меня на сайте есть несколько интеграций по Oauth со сторонними сервисами. Т.е. я позволяю пользователю авторизоваться на стороннем сервисе, сохраняю токен у себя, а потом уже дергаю сторонний сервис для получения или записи данных.
У всех таких интеграций есть общая часть — получения токена Oauth, его хранение, отображение в профиле подключенных сервисов.
У всех таких интеграций есть уникальная часть — собственно взаимодействие с самим сервисом.
В текущий момент и общая часть по управлению Oauth и реализация сервисов — это один плагин. Это относительно удобно поддерживать и развивать, нет лишних потерь на загрузке отдельного плагина для каждого сервиса.
Но. При такой реализации нет возможности делиться плагином с сообществом, ибо придеться либо вести две версии плагина — одна своя, со специфическими сервисами и вторая — диетическая, где оставлено управление Oauth и некоторые общие сервисы.
В противовес монолитной реализации есть мысли разделить плагин на несколько — OauthDev, который будет отвечать за базовую работу с Oauth и набор зависимых плагинов — по одному на сервис. Это удобно поддерживать и отдать в каталог, но тут получает overhead за счет необходимости таскать кучу плагинов вместо одного.
Пока в голове есть план уйти от монолита и плюнуть на overhead, но хотелось бы выслушать мнения коллег — как оно лучше? Где какие плюсы/минусы перевесят?
Короче потрепаться на тему хочется.
Уже в паре плагинов ломаю голову над их структурной организацией и никак не могу прийти к оптимальному для себя решению.
У меня на сайте есть несколько интеграций по Oauth со сторонними сервисами. Т.е. я позволяю пользователю авторизоваться на стороннем сервисе, сохраняю токен у себя, а потом уже дергаю сторонний сервис для получения или записи данных.
У всех таких интеграций есть общая часть — получения токена Oauth, его хранение, отображение в профиле подключенных сервисов.
У всех таких интеграций есть уникальная часть — собственно взаимодействие с самим сервисом.
В текущий момент и общая часть по управлению Oauth и реализация сервисов — это один плагин. Это относительно удобно поддерживать и развивать, нет лишних потерь на загрузке отдельного плагина для каждого сервиса.
Но. При такой реализации нет возможности делиться плагином с сообществом, ибо придеться либо вести две версии плагина — одна своя, со специфическими сервисами и вторая — диетическая, где оставлено управление Oauth и некоторые общие сервисы.
В противовес монолитной реализации есть мысли разделить плагин на несколько — OauthDev, который будет отвечать за базовую работу с Oauth и набор зависимых плагинов — по одному на сервис. Это удобно поддерживать и отдать в каталог, но тут получает overhead за счет необходимости таскать кучу плагинов вместо одного.
Пока в голове есть план уйти от монолита и плюнуть на overhead, но хотелось бы выслушать мнения коллег — как оно лучше? Где какие плюсы/минусы перевесят?
Короче потрепаться на тему хочется.