Когда стоит разделять backend и frontend?
Добавлено: 2019.07.18, 00:45
Всем привет!)
Немного странный вопрос созрел, но хочу в нем разобраться)
В каких случаях приложение стоит разделять на backend и frontend? Под backend я имею ввиду разделение пользовательского слоя UI на управление/администрирование (админка). Часто встречаются проекты, независимые модули, где нет подобного разделения. А вот, например, эта же CMS Wordpress имеет такое разделение. И отдельную админ панель. Какие-то сайты делают отдельные личные кабинеты и пользовательская часть уходит туда... В каких случаях это действительно необходимо?
Например, у меня есть модуль «мероприятия». Мероприятия может создавать не только админ, но и пользователь с разрешёнными правами.
В мероприятиях есть разделы:
1. Соревнования
2. Мастер-классы
3. Батлы
4. Организации
5. Участники
6. Наставники
7. Судьи
8. Дисциплины
Все функциональности пересекаются между собой. Любой пользователь системы может получить необходимую роль и работать в мероприятиях. То есть управление этим модулем не ограничивается только админами и простыми пользователями. Тут: модераторы, пользователи, счетчики и судьи, главы счетной комиссии, судейский комитет, руководители организаций .... возникает вопрос. Как организовать работу по его управлению? А именно:
1. Давать права на доступ в админку и внутри проверять разрешения (модуль admin или приложение backend)
2. Либо же модуль не делится на backend и frontend, а его работа это единая система с разрешениями по ролям и правилам. С едиными видами и контроллерами. А в них куча if else/отдельные assets фильтры с проверкой на доступ/отображение.
Вроде бы простой вопрос, но хочется разобраться полностью. Ещё хочу сказать, что админка в будущем не планируется выноситься в отдельное приложение. Если выноситься, то выносится будет целый модуль.
И сразу же возникает вопрос по побору личного кабинета. Когда необходимо реализовывать такой раздел?
Немного странный вопрос созрел, но хочу в нем разобраться)
В каких случаях приложение стоит разделять на backend и frontend? Под backend я имею ввиду разделение пользовательского слоя UI на управление/администрирование (админка). Часто встречаются проекты, независимые модули, где нет подобного разделения. А вот, например, эта же CMS Wordpress имеет такое разделение. И отдельную админ панель. Какие-то сайты делают отдельные личные кабинеты и пользовательская часть уходит туда... В каких случаях это действительно необходимо?
Например, у меня есть модуль «мероприятия». Мероприятия может создавать не только админ, но и пользователь с разрешёнными правами.
В мероприятиях есть разделы:
1. Соревнования
2. Мастер-классы
3. Батлы
4. Организации
5. Участники
6. Наставники
7. Судьи
8. Дисциплины
Все функциональности пересекаются между собой. Любой пользователь системы может получить необходимую роль и работать в мероприятиях. То есть управление этим модулем не ограничивается только админами и простыми пользователями. Тут: модераторы, пользователи, счетчики и судьи, главы счетной комиссии, судейский комитет, руководители организаций .... возникает вопрос. Как организовать работу по его управлению? А именно:
1. Давать права на доступ в админку и внутри проверять разрешения (модуль admin или приложение backend)
2. Либо же модуль не делится на backend и frontend, а его работа это единая система с разрешениями по ролям и правилам. С едиными видами и контроллерами. А в них куча if else/отдельные assets фильтры с проверкой на доступ/отображение.
Вроде бы простой вопрос, но хочется разобраться полностью. Ещё хочу сказать, что админка в будущем не планируется выноситься в отдельное приложение. Если выноситься, то выносится будет целый модуль.
И сразу же возникает вопрос по побору личного кабинета. Когда необходимо реализовывать такой раздел?