Node.js Шаблонизаторы и MVC фреймворки. Versus или Feat?

Изучаю активно Node.js и пишу прототип веб-сервиса. Основой моих познаний является скринкаст Илья Кантора, о котором все разработчики на ноде, я думаю, наслышаны.

Так вот Илья не говорит ничего о т.н. (если я ничего не путаю) клиентских MV* фреймворках, таких как Angular, Ember, Backbone и иже с ними. Но есть же MEAN stack, признанный среди монстров набор технологий, среди которых упомянутый Angular имеется.

И я не могу понять, зачем эти фреймворки собственно нужны? Являются ли они расширением функций шаблонизаторов или это другая песня?

Опишите, пожалуйста, в двух словах, что к чему с этими фреймворками, ждет ли меня грабля из-за того, что я их не использую, или можно разрабатывать простые и почти простые сервисы без подобных фреймворков?
  • Вопрос задан
  • 7293 просмотра
Пригласить эксперта
Ответы на вопрос 3
TekVanDo
@TekVanDo
Javascript Developer
NodeJs - backend js
Angular, Ember, Backbone - фреймворки для frontend их можно и не использовать, все зависит от конкретной задачи
Ответ написан
Комментировать
@chekhovrussia
Если вы не строите single-page application, берите любой шаблонизатор (swig, jade) и вперед. Клиентские фреймворки служат для организации данных и кода на стороне клиента, для общения с backend-сервером. Илья Кантор, кстати говоря, в своих скринкастах таки использует шаблонизатор ejs-locals, но он уже никем не мейнтейнится.
P.S. В скринкасте про express у Ильи далеко не самые изящные решения, с той же подгрузкой моделей например. Многие интересные вещи можно посмотреть в коде у того же MEAN - почитайте его код.
Ответ написан
Комментировать
@naneri
PHP разработчик.
Во фронтэнд фреймворках почти полностью организована MVC структура - бэкэнд только выдаёт инфу по запросу (например данные по товарам, данные для авторизиции), получается работает как REST API. Шаблонов в бэкэнде уже нет. Можно по идее часть логики оставить в бэкэнде.

Из плюсов (на мой дилетантский взгляд) - повышение скорости работы веб-приложение, потому что догружаются только данные. Поэтому приложения очень похожи на родные приложения тех же смартфонов (и поэтому для них придумали термин Single Page Application)

Использование этих фронтэнд фреймворков вовсе необязательно - просто у вас будет по старинке view генерироваться на сервере.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы