MEAN (conjunto de software)
MEAN (MongoDB, Express.js, AngularJS (ou Angular), e Node.js)[1] é um conjunto de soluções JavaScript de software livre e código aberto para a construção de páginas web dinâmicas e aplicações web.[2]
![](http://upload.wikimedia.org/wikipedia/commons/thumb/b/b1/Meanstack-624x250.jpg/300px-Meanstack-624x250.jpg)
Como todos os componentes do conjunto são em Javascript, as aplicações feitas com MEAN podem ser escritas usando a mesma linguagem tanto no back-end(lado do servidor) como no front-end(lado do cliente).
Embora seja frequentemente comparado com outros conjuntos de solução para desenvolvimento web, como o LAMP (Linux, Apache, MariaDB/MySQL e PHP), os componentes do MEAN são mais próximos da programação de alto nível, pois incluem uma ferramenta para camada de apresentação da aplicação, e não incluem uma camada de sistema operacional.[3]
A sigla MEAN foi usada pela primeira vez por pelo desenvolvedor Valeri Karpov[4] que em 2013 introduziu o termo em seu Blog. A logo, criada pelo designer gráfico Austin Anderson para o grupo original de desenvolvedores MEAN no LinkedIn,[5] foi feita juntando as primeiras letras das logos de cada um dos componentes do conjunto MEAN.
Componentes de software
editarMongoDB
editarMongoDB é um banco de dados NoSQL orientado a documentos que usa documentos em formato JSON binário (BSON).
MongoDB é frequentemente escolhido como banco de dados nos projetos MEAN devido ao uso de documentos em formato semelhante ao JSON, o que permite que os outros componentes, também baseados em Javascript, interajam com os dados de forma muito mais natural do que em um modelo de banco de dados relacional (linhas e colunas).[6]
Express.js
editarExpress.js (também chamdo apenas de Express) é um módulo de desenvolvimento web para Node.js.[7]
Embora o Express seja capaz de agir como o servidor web completo, até mesmo com SSL/TLS, por questões de performance ele é mais frequentemente usado juntamente com um proxy reverso como NGINX ou Apache.[8]
Angular e alternativas
editarGeralmente, os dados são requisitados usando métodos Ajax e renderizadas no navegador por um framework de front-end. No entanto, as aplicações feitas com o conjunto MEAN costumam ser inteiramente baseadas em Javascript, é possível usar renderização no back-end, aonde os dados são requisitados, processados e organizados no lado do servidor, o que é mais rápido, prático e seguro.[9]
O conjunto MEAN tradicional usa Angular.js como framework para desenvolvimento de interface gráfica, mas existem inúmeras variações possíveis. React (MERN) e Vue.js (MEVN) são as alternativas mais populares ao Angular.js no conjunto MEAN, embora seja possível usar outras opções, ou simplesmente não usar nenhuma (MEN).[10]
Node.js
editarNode.js é o ambiente de execução no qual o conjunto MEAN roda.
O uso do Node.js, que representa o paradigma de JavaScript Everywhere("Javascript em todo lugar"),[11] é parte integral do conjunto MEAN.
Ver também
editarReferências
- ↑ «us-en_cloud_learn_mean-stack-explained». www.ibm.com (em inglês). IBM Cloud Education. 9 de maio de 2019. Consultado em 16 de fevereiro de 2020. Cópia arquivada em 14 de maio de 2020
- ↑ Dickey, Jeff (24 de setembro de 2014). Write Modern Web Apps with the MEAN Stack: Mongo, Express, AngularJS, and Node.js (em inglês). [S.l.]: Peachpit Press. ISBN 9780133962376
- ↑ «LAMP vs MEAN, Deciding the right stack for your startup». www.linkedin.com (em inglês). Consultado em 16 de fevereiro de 2020
- ↑ «The MEAN Stack: MongoDB, ExpressJS, Angular and Node.js». Tumblr. 30 de Abril de 2013
- ↑ «Mean Stack». LinkedIn
- ↑ «The most popular database for modern apps». MongoDB (em inglês). Consultado em 16 de fevereiro de 2020
- ↑ «Express - Node.js web application framework». expressjs.com (em inglês). Consultado em 16 de fevereiro de 2020
- ↑ II, Thomas Hunter (28 de março de 2019). «Why should I use a Reverse Proxy if Node.js is Production-Ready?». Medium (em inglês). Consultado em 16 de fevereiro de 2020
- ↑ «Features - Server Side Rendering | Next.js». nexts.org (em inglês). Consultado em 16 de fevereiro de 2020
- ↑ holfener, Frys. «Offshore MEAN Stack Development». Imenso Software. Consultado em 17 de Outubro de 2019
- ↑ «JavaScript Everywhere and the Three Amigos (WebSphere: Into the wild BLUE yonder!)». 14 de novembro de 2013. Consultado em 16 de fevereiro de 2020. Cópia arquivada em 14 de novembro de 2013
Bibliografia
editar- Haviv, Amos Q. (2014). MEAN Web Development: Master real-time web application development using a mean combination of MongoDB, Express, Angular JS, and Node.js. Birmingham, UK: Packt Publishing. ISBN 978-1783983285
- Holmes, Simon (2019). Getting MEAN with Mongo, Express, Angular, and Node, Second Edition. Shelter Island, NY: Manning Publishing. ISBN 9781617294754
- Holmes, Simon (2015). Getting MEAN with Mongo, Express, AngularJs, and Node. Shelter Island, NY: Manning Publishing. ISBN 9781617292033
- Dickey, Jeff (2014). Write Modern Web Apps with the MEAN Stack: Mongo, Express, AngularJS, and Node.js (Develop and Design). San Francisco, CA: Peachpit Press. ISBN 978-0133930153
Ligações externas
editar- meanjs.org is a fork of mean.io. It uses a tool called 'Yeoman' to generate Angular CRUD, routes, controllers, views, and services.
- MEAN Stack User Registration and Login Tutorial