Série da semana: eXtreme Programming na prática

Veja mais

Quer ter acesso a todos os cursos desse Guia?

MongoDB, Express, Angular e Node.js

Neste guia de consulta você encontrará diversos conteúdos sobre a MEAN Stack, o conjunto de frameworks e banco de dados baseados em JavaScript formado pelo MongoDB, Express, Angular e Node.js.

Introdução ao MongoDB, Express, Angular e Node.js

Você já ouviu falar em MEAN Stack? MEAN é um conjunto (ou stack) de frameworks e banco de dados todos baseados em JavaScript. Seu nome é o acrônimo de MongoDB+Express+AngularJS+Node.js, ou seja, tecnologias que lhe darão o suporte para desenvolver aplicações tanto no lado servidor quanto no cliente usando uma mesma linguagem de programação: JavaScript.

Para saber mais sobre essa stack, confira o DevCast abaixo:

Angular

Angular é um framework para a criação de aplicações cliente para diferentes plataformas, tais como desktop e principalmente web e mobile. Aplicações cliente, na maior parte do tempo, apresentam os dados para o usuário e cuidam da forma como o mesmo vai interagir com as funcionalidades providas por um back-end.

Para aprender sobre o Angular e comerçar a utilizá-lo confira o curso a seguir:

Há ainda vários outros conteúdos sobre esse framework que você pode encontrar no Guia de Referência Angular:

Node.js

O Node.js é um runtime de JavaScript que permite executar aplicações com essa linguagem fora do browser. Ou seja, trata-se de uma plataforma de desenvolvimento de aplicações do lado servidor que utiliza o JavaScript como linguagem de programação. Com ele podemos usar essa linguagem da mesma forma que usamos Java, C# e PHP, por exemplo.

De fato o Node.js baseia-se no V8, o mecanismo responsável pela interpretação do JavaScript no Google Chrome. Ou seja, se você já usou JavaScript no front-end de aplicações web, poderá aproveitar o conhecimento sobre essa linguagem e programar também o back-end.

Para dar os primeiros passos e compreender na prática como isso funciona, que tal assistir os materiais abaixo:

Dentro do Node.js há um componente fundamental chamado NPM (Node Package Manager). Ele é o responsável pela instalação e atualização dos pacotes/bibliotecas utilizados nos projetos, além de poder ser utilizado na execução e testes das aplicações. Portanto, conhecer o NPM e saber utilizá-lo é fundamental para você que deseja usar o Node.js. E para lhe ajudar preparamos um curso no qual você vai conhecer essa ferramenta e compreender seu funcionamento:

Aplicações web

O Node.js é uma das plataformas que mais vem ganhando destaque na construção de aplicações web. Alguns dos motivos para isso são seu bom desempenho, o uso do JavaScript (uma linguagem já bastante conhecida) e a ampla quantidade de pacotes/bibliotecas disponíveis para a realização de várias tarefas comuns (acesso a banco de dados, log, servidores web, etc.).

O Node.js também pode ser facilmente integrado a frameworks JavaScript, como AngularJS, e é base para várias outras plataformas que tem o JavaScript como linguagem principal, como o Meteor.js. Quer saber mais? Separamos alguns artigos que vão lhe ajudar:

Programação assíncrona

Programação assíncrona é um conceito muito forte no Node.js. De forma resumida, esse modelo de programação nos permite executar um determinado procedimento e seguir com o fluxo do código sem que o programa seja interrompido até a finalização do processamento. Ao invés de aguardar o resultado daquela ação (de forma síncrona) nós usamos as chamadas "funções de callback", que são executadas quando o processamento finaliza (de forma assíncrona).

Para que você possa compreender melhor essa prática sugerimos a leitura do artigo abaixo:

Testes

Os testes são uma etapa fundamental no desenvolvimento de software. Somente testando nossas aplicações podemos garantir que elas serão entregues ao cliente final com a maior qualidade possível.

Nesse contexto uma das práticas mais comuns é o TDD (Test-Driven Development), que prega a realização de testes durante todo o processo de desenvolvimento. Para aprender a usar o TDD em aplicações Node.js você pode ver o artigo abaixo, que lhe auxiliará na adoção dessa técnica:

O projeto a seguir consiste em uma aplicação web para buscar filmes por título e descrição em um dataset de quase 400 mil registros. Para tal utilizaremos o Elasticsearch, um microsserviço feito em Node.js e uma Single Page Application feita Angular:

MongoDB

O MongoDB é um banco de dados NoSQL orientado a documentos que armazena os dados no formato JSON. Entre suas principais características está a forma como ele lida com grandes volumes de dados mantendo a alta performance.

Para conhecer esse banco e começar a utilizá-lo, confira o curso abaixo:

E para saber como acessar o MongoDB a partir do Node.js, temos o seguinte curso:

Há ainda vários outros conteúdos sobre esse banco de dados NoSQL que você pode encontrar no Guia de Consulta de NoSQL e MongoDB:

Express

Atualmente o Express é o framework mais utilizado para o desenvolvimento de aplicações web com Node.js.  Além de facilitar a implementação do padrão MVC, ele conta com diversos pacotes adicionais para a realização de tarefas comuns, como o processamento de formulários, renderização de views, etc.

Que tal dar uma olhada nesse framework e considerar utilizá-lo em seus projetos? Para lhe ajudar preparamos um curso que vai lhe apresentar os conceitos iniciais sobre o Express:

AngularJS

O AngularJS é a primeira versão do framework que atualmente se chama apenas Angular. Enquanto seu sucessor assumiu o TypeScript como linguagem de programação principal, o AngularJS se baseia em JavaScript e, apesar das novas versões do framework, ele continua sendo usado em vários projetos.

Para entender melhor sobre as diferenças entre as versões do framework, não deixe de dar uma olhada nesse artigo:

No curso abaixo você aprenderá a trabalhar com o AngularJS, conhecendo seus principais conceitos:

Rotas e serviços

Rotas e serviços são dois componentes fundamentais do AngularJS. Enquanto as rotas tratam da forma como as páginas de uma aplicação são acessadas, os serviços definem blocos de lógica que podem ser reutilizados em diferentes pontos do projeto. Para que você possa se aprofundar nesses assuntos separamos os links abaixo:

Praticando

Agora que você já tem um bom conhecimento sobre esse framework, sugerimos aqui alguns vídeos práticos em que você verá como empregar o AngularJS na criação de diferentes aplicações:

E temos ainda alguns artigos com temas bem interessantes:

Integração com Java e .NET

Se você trabalha com Java e/ou .NET para aplicações web, já deve ter considerado a possibilidade de usar o AngularJS em seus projetos. Os artigos abaixo lhe ajudarão nessa implementação em Java:

E a seguir temos alguns conteúdos que demonstram a integração desse framework com o ASP.NET Web API:

Outros conteúdos

Os links abaixo trazem conteúdos para que você possa complementar seus estudos sobre o AngularJS:

Ferramentas

O Node.js é atualmente a base para diversas ferramentas muito úteis e comuns no desenvolvimento de software, tais como o Grunt e o Yeoman, que você pode conhecer nos conteúdos abaixo:

Mais sobre Stack MEAN

Além dos cursos, exemplos e DevCasts contidos nesse guia a DevMedia publica com frequência novos conteúdos sobre a Stack MEAN, os quais você pode conferir nos Guias de Consulta abaixo:

Além disso, você pode conferir todo o conteúdo de Front-end clicando aqui.

Suporte ao aluno - Deixe a sua dúvida.
Assinatura Devmedia
Faça parte dessa comunidade 100% focada em programação e tenha acesso ilimitado. Nosso compromisso é tornar a sua experiência de estudo cada vez mais dinâmica e eficiente. Portanto, se você quer programar de verdade seu lugar é aqui. Junte-se a mais de...
+ 800 Mil programadores
,90* / mês
  • Séries
  • Projetos completos
  • Cursos
  • Guias de carreiras
  • DevCasts
  • Desafios
  • Artigos
  • App
  • Suporte em tempo real
A assinatura é cobrado através do seu cartão de crédito. *Tempo minimo de assinatura: 12 meses.
Assinatura Devmedia
Faça parte dessa comunidade 100% focada em programação e tenha acesso ilimitado. Nosso compromisso é tornar a sua experiência de estudo cada vez mais dinâmica e eficiente. Portanto, se você quer programar de verdade seu lugar é aqui. Junte-se a mais de...
+ 800 Mil programadores
Conheça agora!
,90* / mês
  • Séries
  • Projetos completos
  • Cursos
  • Guias de carreiras
  • DevCasts
  • Desafios
  • Artigos
  • App
  • Suporte em tempo real
A assinatura é cobrada através do seu cartão de crédito. *Tempo mínimo de assinatura: 12 meses.