API for information seeking and searching behavior
VISÃO TÉCNICA - BACK END
API Rest usando Java com Spring Boot e banco de dados Postgres, JPA com Hibernate para mapeamento objeto-relacional, validação de dados e tratamento de exceções, ModelMapper para mapeamento de objetos determinando automaticamente como um modelo de objeto mapeia para outro com base em convenções, uso adequado do protocolo HTTP no padrão REST, Swagger para documentar, permitindo que a documentação evolua no mesmo ritmo da implementação, Uso do Query DSL para consultas mais complexas permitindo gerar queries type-safe.
Arquitetura - DDD
Modelagem de software que segue um conjunto de práticas com objetivo de facilitar a implementação,onde visa a divisão de responsabilidades por camadas.
Refatoração para Arquitetura DDD. https://www.devmedia.com.br/domain-driven-design-refatorando-a-arquitetura-de-aplicacoes/34419.
Como criar um projeto Spring Boot. https://spring.io/guides/gs/spring-boot/
Implementação do Query DSL. https://www.baeldung.com/rest-api-search-language-spring-data-querydsl
Implementação do Model Mapper. https://www.baeldung.com/java-modelmapper-lists
Uso do Protocolo HTTP no Padrão Rest. https://restfulapi.net/
Gerando Documentação da API com Swagger. https://www.baeldung.com/swagger-2-documentation-for-spring-rest-api
Tratamento de Exceções https://www.baeldung.com/java-exceptions