Publicado em: 17/03/2025

Au 05 - Back-end - Node.js - Salvando Produto - Mestres BEGIN


Nesta aula, focamos na implementação prática para salvar produtos no banco de dados MongoDB, organizando melhor a estrutura do projeto e criando o mecanismo de persistência dos dados.

Organização do Projeto

Para melhorar a organização do código, criamos uma nova estrutura de pastas:

  • useCases/products/ - Onde colocamos a lógica específica para operações com produtos
  • CreateProduct.ts - Arquivo dedicado à criação de produtos

Essa separação ajuda a manter o código mais limpo e modular, mesmo que inicialmente pareça mais trabalho.

Fluxo de Criação de Produtos

O processo de criação envolve:

  1. Receber os dados do produto via requisição POST
  2. Validar a estrutura dos dados recebidos
  3. Persistir os dados no MongoDB
  4. Retornar a resposta adequada ao cliente

Comunicação via JSON

Um ponto crucial foi configurar o Express para trabalhar com JSON:

1app.use(express.json());

Esta configuração deve ser feita antes das definições de rota e conexão com o banco de dados, permitindo que nossa API entenda e responda no formato JSON.

Lógica Assíncrona

Operações com banco de dados são assíncronas por natureza. Utilizamos async/await para garantir que:

  • A aplicação aguarde a conclusão da operação no banco
  • Não prossiga para a próxima instrução antes de finalizar a atual
  • Tenhamos controle sobre o fluxo de execução

Considerações Finais

Nesta implementação inicial, estabelecemos as bases para:

  • Uma arquitetura mais organizada com separação de responsabilidades
  • Comunicação eficiente entre cliente e servidor via JSON
  • Persistência básica de dados no MongoDB

Algumas melhorias importantes para as próximas etapas incluem:

  • Validação mais robusta dos dados recebidos
  • Tratamento adequado de erros e exceções
  • Implementação de testes automatizados
  • Criação de um mecanismo para evitar duplicação de dados

Embora esta seja uma implementação inicial, ela já demonstra boas práticas de desenvolvimento backend e prepara o terreno para funcionalidades mais complexas que serão adicionadas nas próximas aulas.

Fernando Cunha
Artigo deFernando Cunha

Com mais de 15 anos de experiência em tecnologia e formado pela FAAP em Administração de empresas, hoje é o CEO da Mestres da Web, empresa referência no mercado nacional e com projeções de expansão internacional.

últimos vídeos

veja nossos vídeos mais recentes e esteja por dentro de muitas novidades.

Au 02 - Front-end - React - Estrutura de projeto - Mestres BEGIN
play

Au 02 - Front-end - React - Estrutura de projeto - Mestres BEGIN

Explorando a estrutura gerada pelo Create React App, entendendo o papel das pastas public e src, os conceitos de Virtual DOM, JSX e componentes, além de como o CSS é aplicado nos projetos React.

Autor deste artigo
Fernando Cunha17/03/2025
Au 03 - Front-end - React - Criando layout da nossa aplicação - Mestres BEGIN
play

Au 03 - Front-end - React - Criando layout da nossa aplicação - Mestres BEGIN

Explorando a criação de um layout fixo para a aplicação React, com barra lateral, barra superior e área dinâmica para conteúdo. Utilizando o React Router Dom v6 para gerenciar navegação entre rotas.

Autor deste artigo
Fernando Cunha17/03/2025
Au 04 - Front-end - React - Estilizando o layout da aplicação - Mestres BEGIN
play

Au 04 - Front-end - React - Estilizando o layout da aplicação - Mestres BEGIN

Abordando técnicas para organizar estilos em React, utilizando seletores CSS, CSS Modules, integração com React Router, reset CSS eficiente e boas práticas para garantir consistência visual e manutenibilidade.

Autor deste artigo
Fernando Cunha17/03/2025