Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
3
respostas

[Projeto] Segue a minha resolução dos exercícios propostos

A resolução está no repositório https://github.com/martinssluis/resolucaoExerciciosAlura na branch consumindoAPILidandoComExcecoes
Fiz a seperação de responsabilidades da forma que acreditei ser melhor, mas gostaria de saberr como é feito em uma aplicação real para que eu possa melhorar no proximo projeto. Fiquei com dúvida onde alocar a url da api, mas tentei nao deixar fortemente acoplada com o método. Aceito sugestões de melhores praticas e padrões de projeto

3 respostas
solução!

Oi, Luís! Tudo bem?

Muito bacana ver você compartilhando sua resolução dos exercícios propostos e buscando aproximar a organização do projeto Java das práticas usadas em aplicações reais. A separação de responsabilidades que você mencionou é um ótimo caminho para reduzir o acoplamento e facilitar futuras alterações no código.

Em projetos reais, é comum manter configurações como a URL da API fora das classes responsáveis pelas requisições, usando arquivos de configuração, propriedades ou variáveis de ambiente, e deixar uma classe de serviço ou cliente da API responsável pela comunicação externa. Dica: experimente criar uma classe específica para acessar a API e receber a URL por construtor; assim, a configuração fica separada da regra de negócio e você também facilita os testes e futuras trocas de API. Conforme o projeto crescer, vale estudar conceitos como injeção de dependência, interfaces e padrões como Repository ou Adapter, sempre aplicando-os quando houver uma necessidade concreta. Pensando no seu próximo projeto, qual dessas melhorias você gostaria de experimentar primeiro na organização das classes?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!

Obrigado pelas sugestões, Victor. Você teria algum repositório de exemplo para eu me inspirar?

Oi, Luís! Tudo bem?

Sobre sua resolução dos exercícios propostos, como referência você pode dar uma olhada no Spring PetClinic e no BuckPal, dois projetos Java interessantes para observar organização de responsabilidades e baixo acoplamento.

Como sugestão, vale analisar primeiro onde ficam as configurações, como as classes recebem suas dependências e como as responsabilidades são separadas.

É preciso buscar, traduzir o readme e entender os códigos, pode ser um bom material de estudo.

Queria mandar mais projetos reais de grandes empresas, mas realmente é complicado achar algo, principalmente por questão de sigilo é claro.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!