Коллеги, приветствую. Давно пишу на php и фронт на js. Недавно начал активно интересоваться нодой и популярными пакетами для неё. Возник вопрос - express.js пожалуй лидер в разработке бэка, если говорить об API-бэкенде, то тем более. Смотрю на его код в простых примерах и вижу почти то же самое, что и на "чистой" ноде (ЧН).
1) В чем фишка экспресса, что его так часто используют? Middleware (не знаю, есть ли аналоги на ЧН) удобны, бесспорно, но что есть ещё? Некоторые простые штуки совершенно так же пишутся как и на ЧН, без оверхеда в 50-100% по производительности.
2) Есть большой проект на PHP, планируется оставить на нём всю логику в виде API, а View перевести на node+vuejs. Нужен ли тут Express?
3) Наткнулся на статьи по Sails.js судя по плюсам крутая штука, по минусам - малое комьюнити, медленно развивается и на больших проектах доставляет боль. Если вы на нём работали, насколько правда? Лучше ли забыть про Sails))? Дело в том, что в проекте на ноде уже используется Socket.IO и все данные хранятся в Mysql и Sails и с тем и с тем работает из коробки - это плюс. Но установить доп. npm-пакеты дело двух минут. Плюс Sails'a становится маленьким)
Sails брать не стоит, он и правда полумёртвый. А экспресс просто инструмент, который упрощает жизнь разработчику. Если считаешь, что тебе его функционал не нужен или просто хочешь написать его сам - не используй его :)
Для vuejs и для чего угодно ещё он не обязателен. Сокеты тоже прекрасно пишутся без него.
Ну просто надстройка над http с роутингом удобным. Сравни доки экспресса и модуля http. Букав и там, и там немного, так что в комментариях это расписывать смысла нет :)