Skip to content
Gabriel Rodrigues Ricardo edited this page Nov 4, 2024 · 4 revisions

Visão Geral

Objetivo

Este projeto é uma API RESTful para o gerenciamento de contatos, permitindo operações de criação, consulta, atualização e exclusão de contatos. O projeto foi desenvolvido utilizando as melhores práticas de arquitetura, incluindo Domain-Driven Design (DDD) e Clean Architecture, o que proporciona uma estrutura modular e fácil de manter. A API é protegida por camadas que separam a lógica de negócios, a aplicação e a infraestrutura.

Requisitos Funcionais

  • Cadastro de contatos: permitir o cadastro de novos contatos, incluindo nome, telefone e e-mail. Associe cada contato a um DDD correspondente à região.
  • Consulta de contatos: implementar uma funcionalidade para consultar e visualizar os contatos cadastrados, os quais podem ser filtrados pelo DDD da região.
  • Atualização e exclusão: possibilitar a atualização e exclusão de contatos previamente cadastrados.

Requisitos Técnicos

  • Persistência de Dados: utilizar um banco de dados para armazenar as informações dos contatos. Escolha entre Entity Framework Core ou Dapper para a camada de acesso a dados.
  • Validações: implementar validações para garantir dados consistentes (por exemplo: validação de formato de e-mail, telefone, campos obrigatórios).
  • Testes Unitários: desenvolver testes unitários utilizando xUnit ou NUnit.

Endpoints

Método Endpoint Descrição
POST /contacts Cria um novo contato
GET /contacts Obtém todos os contatos cadastrados
GET /contacts/{ddd} Obtém uma lista de contatos da região específica
PUT /contacts/{id} Atualiza dados de um contato
DELETE /contacts/{id} Exclui um contato específico

Clone this wiki locally