Conceitos Fundamentais da API
Conceitos Importantes para o Projeto Prático
Package.json
O package.json
é um arquivo fundamental criado automaticamente ao iniciar um projeto com o comando npm init
. Ele gerencia as dependências (bibliotecas e pacotes que o projeto utiliza) e os scripts (comandos que facilitam tarefas como iniciar o servidor ou executar testes) do projeto.
Principais Funções:
Gerenciar Dependências: Lista todas as bibliotecas necessárias para o projeto funcionar corretamente.
Definir Scripts: Permite a criação de atalhos para comandos comuns, como iniciar o servidor (
npm start
) ou executar o modo de desenvolvimento (npm run dev
).Informações do Projeto: Contém metadados como nome, versão, descrição e autor do projeto.
Endpoint
Um endpoint é um ponto específico que a API acessa para interagir com um recurso do projeto. É a URL que o cliente utiliza para chamar uma rota e se conectar ao servidor.
Exemplo:
GET
https://api.meusite.com/produtos
– Obtém a lista de produtos.POST
https://api.meusite.com/produtos
– Adiciona um novo produto.
Rota
Uma rota é o caminho definido pelo desenvolvedor no código que indica qual função será executada quando o servidor recebe uma requisição em um determinado endpoint.
Exemplo de Rota com Express.js:
Arquitetura de Software
A arquitetura de software organiza o código em camadas distintas, facilitando a manutenção e escalabilidade da aplicação. As principais camadas são:
Controller:
Função: Lida com as requisições e respostas. É a primeira camada que recebe as requisições do cliente e decide como processá-las.
Responsabilidade: Validar dados de entrada, chamar os serviços apropriados e retornar a resposta ao cliente.
Service:
Função: Camada dedicada à lógica de negócio. Encapsula operações relacionadas a uma determinada entidade ou funcionalidade.
Responsabilidade: Processar dados, aplicar regras de negócio e interagir com os repositórios.
Repository:
Função: Gerencia o acesso à fonte de dados. Fornece métodos para acessar e manipular os dados armazenados no banco de dados.
Responsabilidade: Realizar operações CRUD (Create, Read, Update, Delete) no banco de dados de forma abstrata, permitindo que outras camadas não precisem lidar diretamente com a lógica de persistência.
Last updated
Was this helpful?