Я был главным разработчиком стека LAMP, но в последнее время мне хотелось попасть в новые вещи, такие как стеки MEAN, но все вещи, с которыми я сталкиваюсь, запутываются, может кто-то помочь мне разобраться?
Поэтому я играл с сервером Node.js с помощью Express, Jade и mySQL DB. Итак, из того, что я читал, Node управляет бэкэнд, Express выполняет визуализацию переднего плана, а Jade... тоже делает передний конец?
Кроме того, для стека MEAN. Угловой имеет передний конец вправо? Так что делает Экспресс в этой ситуации, и ему нужно что-то вроде Джейд?
Все эти новые вещи настолько перегружены, что я все еще читаю документы об Amber, React, Meteor, Firebase и т.д. Есть ли сайт, который документирует все это вместе и как они сочетаются?
Вот краткое описание того, что вы ищете:
'M' for [MONGODB]
MongoDB - это документально ориентированная база данных, очень проста в использовании и отлично работает с javascript. вы вставляете данные JSON и получаете от него данные JSON.
'E' for [Express]
Express - это инфраструктура Node.js с http
глаголом (GET, POST, PUT DELETE
) и поддержкой промежуточного программного обеспечения. Он поддерживает маршрутизацию с помощью http и middlewares.
'A' for [Angularjs]
AngularJS - это интерфейсная веб-фреймворк, который прекрасно соединяется с вами приложением nodesjs. Вы можете использовать сервисы RESTful
из источников данных Backend и создавать интерактивные одностраничные приложения (SPA) с использованием угловых символов.
'N' for [Node.js]
Node.js - это среда javascript на стороне сервера, основанная на движке Google V8. Это чисто среда javascript. вы можете закодировать в javascript, и узел позаботится об этом и запустится на веб-сервере.
Что касается [Jade]
, то это шаблонный движок, который компилируется в HTML
и выводится с вашего сервера.
Экспресс не делает переднюю часть. Express - это структура, которая находится поверх Node.js и упрощает создание сайтов. Видишь, узел был изначально создан для создания веб-сайтов. Вы можете считать, что Express является веб-картой для узла, так же, как Flask и Django для Python. Для узла есть и другие веб-фреймворки, такие как Sails и Koa. В стеке MEAN Express обычно выполняет маршрутизацию и обрабатывает разные маршруты в вашем приложении, в то время как Angular обрабатывает интерфейс.
Кроме того, если вы только начинаете со стека MEAN, вам не нужны такие вещи, как Ember, React, Meteor, Firebase и т.д. Все они разные для разных целей, и мое предложение было бы не переусердствовать и делайте шаг за шагом.