Как организовать структуру для spa приложения (backend, frontend)?
Добрый день, коллеги!
В своей работе всегда разрабатывал сайты на php mvc фреймворке. На сайте всегда была открытая часть и админка.
Один сайт - одно приложение. Одна модель, две папки с контроллерами (site, admin), две папки с view (site, admin)
Решил попробовать писать дальше сайты на основе SPA, с использованием какого ни-будь фреймворка (пока смотрю VUE). А с сервера возвращать данные в формате json (используя тоже какой ни-будь легкий фреймворк, например fatftree).
Но встает вопрос с админкой. Она ведь тоже получается как frontend часть. Ее тоже можно также писать на vue.
Получается два фронтенд приложения и одно общая backend. Правильно ли это?
Станислав Б, я где-то в желтой прессе читал что люмен г в квадрате. спорить не надо, так как спорить не собираюсь. но подозрение закралось и не уходит.
alex-1917, а не надо в желтой прессе читать.
вы можете просто открыть на гитхабе этот фатфри и посмотреть, разница между "взять фатфрифреймворк" и "навелосипедить все самому" если и есть, то не в пользу фатфри.
А вместо люмена можно взять слим например это не принципиально.
alex-1917, так у вас подозрение что люмен говно? или что фатфри не говно?
люмен я защищать и не планирую.
но фатфри? я пытался сказать в первую очередь что это срам а не фреймворк, и никаких преимуществ относительно того же люмена я в нем не вижу
Начнем с того, что от "легкого фреймворка" вам легче не станет. Написание API-шного бекенда не изменяет бизнес логику и вам пригодятся все фишки "обычного" фреймворка.
Про админку: если вам действительно важно, что бы админка была на SPA, и вам не лень писать еще одно приложение для этого - тогда вам нужны два приложения. С другой же стороны, админка на SPA не нужна почти никогда и вместо нее проще использовать какой-нибудь пакет-генератор под ваш фреймворк. Никто не запрещает вам сделать часть приложения SPA-шной, а часть - обычной.
Так что тут все зависит от того, что это за админка и в каких целях/где она будет использоваться.