A Deep Dive into Reusable Components.

Reusability is one of the most common and frequently used buzzwords in software development. Developers are building components based on collections of reusable components, recently most of the…

Smartphone

独家优惠奖金 100% 高达 1 BTC + 180 免费旋转




MERN STACK?

Eaeee devs!

Antes de falar da MERN, bora entender o que é esse “STACK” que você vê em praticamente todo lugar, quando se falar de tecnologia, mais especificamente, programação.

Na tradução literal, STACK significa PILHA, o qual é um conceito muito conhecido para quem estudou ciências da computação, nesse contexto, uma pilha é um tipo abstrato de dado e estrutura de dados baseado no princípio de Last In First Out, ou seja “o último que entra é o primeiro que sai” caracterizando um empilhamento de dados.

Porém, não é dessa STACK (pilha) que os recrutadores estão falando quando divulgam uma vaga para profissionais “fullstack”, por exemplo, isso porque o termo foi reutilizado para representar a quantidade de tecnologias que você tem em sua “pilha” de conhecimento.

Ou seja, em programação nós nos apropriamos do termo stack para referenciar quais conjuntos de tecnologias nós conhecemos, seja de front-end, back-end, banco de dados, devops, testes e por aí vai. Toda vez que você aprender alguma tecnologia nova, você está adicionando ela em sua “pilha” de conhecimento, ou em sua stack.

MERN é um conjunto de tecnologias que caminham juntas para construção de aplicações web, na imagem acima você já está vendo que a palavra MERN é um acrônimo de palavras representando:

M: Mongo DB (Banco de dados)
E: Express (Back-end)
R: ReactJs (Front-end)
N: NodeJs (Motor JavaScript)

Na lista acima eu indiquei qual a função de cada uma, mas queria dar um breve resumo sobre elas para que você realmente entenda porque trabalhar com elas vai gerar benefícios para seus projetos e equipes.

Esse banco de dados é o queridinho dos programadores quando se fala em banco NoSQL (Not only SQL), isso porque ele utiliza um padrão de armazenamento de dados chamado BSON, o qual é extremamente parecido com o famoso JSON(JavaScript Object Notation).

Se você não sabe a real função de uma API, vou simplificar, de forma objetiva ela é responsável por interceptar os dados enviados do front-end para o banco de dados, nessa interceptação ocorre validação de dados, regras de negócio, segurança, entre outras operações para garantir a integridade do banco de dados e principalmente, para armazenas os dados de forma correta nele, além disso, sempre que o front-end precisar de um dado, ele sempre vai pedir para o back-end(API) que por sua vez faz todas as validações, busca o dado e devolve para o front-end.

Para fazer você visualizar isso tudo de forma prática, imagine que você quer criar uma postagem no Instagram, você vai precisar inserir uma imagem, descrição, entre outras informações opcionais, assim que você clica em postar, todas essas informações precisam ser registradas para que quando você entrar no Instagram no outro dia, você a encontre, para esse registro, você precisa de um banco de dados, mas antes de chegar no banco o back-end(API) precisa validar todas as informações e aí, sim, registrar no banco.

Essa é outra biblioteca de Node JS, só que dessa vez ela é responsável por criar o front-end da aplicação web, o front é a parte que o usuário vê e interage, essa ferramenta incrível foi criada pelo time de programadores do Facebook visando facilitar a criação de interfaces de usuário e principalmente gerar fluidez na navegação, trazendo um aspecto de aplicativo mobile para os sites, fazendo com que a velocidade aumente, facilitando a interação do usuário com a aplicação web.

Toda aplicação em React é chamada de SPA(Single Page Application), isso porque essa biblioteca possui apenas um arquivo HTML e gera todas as outras “partes” do site através do JavaScript, facilitando a codificação dos sites e agrupando essas “partes” em componentes que podem ser reutilizados, facilitando a manutenção e aumentando a rapidez na construção de aplicações web, pois evita repetição de código.

Essa tecnologia não é tão simples de aprender, mas quando se entende o conceito, tudo flui tranquilamente, e as vantagens em utilizá-la se tornam cada vez mais aparentes!

Esse cara foi citado em Express e React, isso porque ele é o grande responsável por fazer essas tecnologias funcionarem em nosso computador, pois o JavaScript foi criado para ser interpretado apenas pelo navegador, o que gerava uma grande limitação para essa linguagem tão linda e incrível.

Dai então pensaram, “será que não conseguimos interpretar o JS do lado do servidor também?” e a resposta foi sim, dai então uma equipe de programadores “pegou” o motor que interpreta o JavaScript no Google Chrome, chamado de “V8” e reutilizaram ele para criar o Node JS que agora podemos instalar em nossos computadores. Ele traz consigo diversos pacotes e bibliotecas, como o Express e o React, proporcionando uma extrema flexibilidade e pluralidade para o tão amado JavaScript!

Espero que os benefícios de utilizar a MERN STACK em seus projetos tenham ficados claros, mas se não, quero trazer mais clareza para vocês.

De modo geral, sempre que trabalhamos com a mesma linguagem de programação(JS) nos dois grandes “polos”(front e back) de nossa aplicação, nós não só ganhamos desempenho, mas também uma facilidade de comunicação entre as equipes, gerando rapidez na resolução de problemas e implementações de novas funcionalidades. Quando agregamos isso a um banco de dados que utiliza uma arquitetura muito próxima do JSON, nossos poderes são ampliados e a fluidez do trabalho fica evidente.

Por fim, existem diversos conjuntos de STACKS que trabalham bem juntas, e você pode encontrar mais acrônimos de palavras como essa por aí, minha dica para você que quer ser fullstack é, se apegue em uma e a estude muito, tenho certeza que não irá se arrepender!

Espero ter ajudado, até a próxima, faloooou!

Add a comment

Related posts:

Getting started with Programming Languages ? Python got you..

IT people like software engineer, Developer and Data scientist and Analyst earn a six figure salary Like $150,000 by learning Programming languages

Buy Trustpilot Reviews

All you have to do is buy a trustpilot review for your business and we’re here to offer the best possible deal. Buying trustpilot reviews will be the best decision for any business owner as consumers…

Why I Am Giving Up On Romance This Winter

But most of the guys I met kind of felt intimated by me — sometime I am too ambitious for them or too feminist or too independent. My mind really goes what the f$%k what it means to be “too much”.