Express

Bora pra mais um conteúdo muito maneiro por aqui?
Eai meus consagrados, tranquilão, numa boa, curtindo o batidão? 🖖
🧠 Hoje o assunto será o Express…
Porém, antes, precisamos entender alguns conceitos básicos que antecedem o uso do Framework Express.
E quais seriam os conceitos necessários para podermos usar essa baita ferramenta?
Vamos listar eles aqui, para uma breve introdução a seguir:
- O que é framework?
- O que é Node.js?
- O que é uma API REST?
Bora?? 🛸
🛠 O que é framework?
Acredito, que no início da sua jornada, as dúvidas são muitas sobre este assunto e podem gerar algumas confusões.
Você pode se perguntar, o que é isso? Framework é uma biblioteca?
Bem, quase isso, pode-se dizer que é um conjunto de bibliotecas ou componentes que são usados para criar uma base onde sua aplicação será construída, com mais rapidez e segurança, pois tem um padrão pré definido para seguir.
Como diz um mestre Jedi, que admiro muito, Framework é um lifestyle.
⚙️ O que é Node.js?
Então… por experiência, e alguns comentários de pessoas que começam nesse universo incrível da programação, esse assunto parece um pouco assustador…
e ficam aquelas dúvidas, mas o que é isso? o que isso faz? onde vive? o que come? haha
Poderíamos ter um post completo sobre esse assunto… e, quem sabe, teremos… 🤖
Porém, o intuito aqui é explicar de forma bem simples e rápida o que seria esse tal de Node, então, bora lá!!
- Ele não é um framework.
Agora vocês já sabem o que isso significa hein?! aaah, moleque!!
- Não é uma linguagem de programação…
Essa é a parte que vocês começam a ficar confusos.
- Ele é um JS Runtime Environment, que usa a Engine V8.
Eeeeita, aqui vocês tem certeza que já estão confusos e bugados!! hahaha 👾
Calma, calma galera… vamos por partes:
O que é Engine V8?
A engine V8 é usada no navegador Google Chrome, e seu propósito é acelerar o desempenho de uma aplicação compilando o código javascript.
O que é JS Runtime Environment?
Traduzindo, significa ambiente de tempo de execução javascript, mas então, o que seria isso? Seria um ambiente, que executa códigos javascript.
Então, depois desses conhecimentos, o que seria o Node basicamente?
Um ambiente na sua máquina, que usa a engine V8, para rodar seu código javascript… Agora sim né?! no final nem pareceu tão complicado!
🛰 O que é uma API REST?
Primeiramente, o que é uma API?
Application Programming Interface, que significa, Interface de Programação de Aplicações, e trata-se de um conjunto de rotinas e padrões estabelecidos para que outras aplicações consigam utilizar as funcionalidades desta aplicação, sem precisar conhecer detalhes da implementação do software.
Agora sim, com essa explicação rapidinha, podemos partir pra uma API REST…
Em inglês, Representational State Transfer, traduzindo… Transferência Representacional de Estado.
Mas o que isso quer dizer? 👽
Basicamente, é um conjunto de princípios de arquitetura, que quando seguidas, permitem a criação de um projeto com interfaces bem definidas, e é utilizada para a transferência, manipulação e representação de recursos.
E o que seriam esses recursos?
Seriam as informações, por exemplo, de um pedido, um cliente… que são manipuladas através de requisições HTTP, que atendem as diretrizes definidas na arquitetura.
Essas requisições são feitas através de métodos, por exemplo, de get, que tem a responsabilidade de buscar informações, do post que tem como utilidade executar uma ação, por exemplo o envio de um e-mail, ou o salvamento de uma informação no banco de dados… temos o put, o delete… e alguns mais, porém, esses citados são os mais conhecidos e utilizados.
Esses métodos são utilizados, por exemplo, para a criação do nosso CRUD(Create, Read, Update, Delete), operações de criação, leitura, alteração e remoção de dados do nosso banco de dados.
Acredito que essa seria a explicação mais básica possível sobre uma API REST, e para complementar, vamos para as vantagens de usar esse modelo de API.
- Separação entre cliente e servidor
É a separação entre o front-end, back-end e servidor.
- Confiabilidade e escalabilidade
É fácil a extensão de recursos, facilitando o desenvolvimento.
E cada requisição é feita de maneira única e independente, sendo assim, a aplicação é agnóstica de servidor e de endereçamento.
E esse modelo permite que a aplicação acesse banco de dados de diferentes servidores.
- Multiplataforma
A resposta das requisições retornam dados no formato JSON, facilitando o desenvolvimento de aplicações multiplataformas, por que a camada front-end é capaz de fazer o tratamento adequado para a exibição dos resultados.
Então galera, depois desses conhecimentos essenciais, é possível partirmos pro ExpressZão da massa!! haha 🎯
🚀 O que é Express?
Depois de todo esse conhecimento adquirido, aqui vou explicar o conceito do Express, que se autodeclara um framework web rápido, flexível, e minimalista, mas vamos dar uma complementada nessa explicação!! haha
Então, o Express é um framework progressivo, devido à possibilidade de acoplamento de outras bibliotecas e funcionalidades, e ele é específico para ser usado no Node. E é utilizado para facilitar e acelerar o desenvolvimento de aplicações back-end.
Ele é muito popular em empresas do mundo todo, dentre elas, Fox Sports, PayPal, IBM, Uber.
Vamos para algumas características principais do framework:
- Possui um sistema de rotas completo.
- Possibilita o tratamento de exceções dentro da aplicação.
- Permite a integração de vários sistemas de templates que facilitam a criação de páginas web para suas aplicações.
- Gerencia diferentes requisições HTTP com seus mais diversos verbos.
- Feito para a criação rápida de aplicações utilizando um conjunto pequeno de arquivos e pastas.
🎯 Conclusão
Como podemos perceber, o conceito do framework Express é muito simples, assim como seu uso.
Dessa forma podemos concluir, que o uso dessa ferramenta incrível só vai crescer, talvez, fazendo com que ela evolua ainda mais.
É isso ai galera, agora curte ai, se inscreve no canal e ativa o sininho pra… aah, calma, calma… 😅🤣
Valeeeeu!
🔗 Referências
Você pode estudar uma pouco mais do assunto nos links:
- https://expressjs.com/pt-br/
- https://developer.mozilla.org/pt-BR/docs/Learn/Server-side/Express_Nodejs/Introdu%C3%A7%C3%A3o
- https://medium.com/xp-inc/https-medium-com-tiago-jlima-developer-criando-uma-api-restful-com-nodejs-e-express-9cc1a2c9d4d8
“Se depurar é o processo de remoção de bugs do software, então programação deve ser o processo de colocação deles.” 😉
comments powered by DisqusPablo Danilo Mota.