O projeto consiste em consumir APIs e exrtrair os dados relevantes para criar stickers(IMAGEM hehe), durante o processo de desenvolvivemento foram feitas refatorações no código afim de desacomplar funções e facilitar alterações, como o consumo de novas APIs
-🔨 Funcionalidade 1
: Consumir e tratar dados de API's;
-🔨 Funcionalidade 2
: Gerar Stickers(.png) para compartilhar em aplicativos de mensagem;
Java 17
InteliJ IDEA
Biblioteca GSON
Paradigma de orientação a objetos
https://github.com/DharanCosta/API_Programing_Languages
https://www.alura.com.br/imersao-java/projetos
-Na primeira aula acessei os dados da API da IMDb (Top 250 Movies) e aloquei os dados dentro de uma String.
-Extrai os dados que são relevantes.
-Exibi e manipulei os dados para que eles aparecessem no terminal de forma organizada e estilizada.
-Comecei a trabalhar na leitura das imagens dos posters de cada filme, o objetivo é transforma-los em stickers para compartilhar via whatsapp/telegran
-Consumindo os dados que vieram da API, utilizei lógica para conseguir extrair imagens no tamanho grande dos links recebidos.
-Com as imagens em um tamanho grande, precisei padronizar os tamanhos. O que facilitou os próximos passos.
-Assim pude adicionar o respiro transparente na parte de baixo das imagens.
-Adicionei um texto que mostra a nota que o filme recebeu.
-Adicionei também um segundo sticker para representar o resultado da nota recebida.
-Criei uma lógica para que as notas pudessem gerar dois resultados diferentes, aprovado e reprovado.
Obs. Como os dados são dos top 250 mais bem rankeados, coloquei uma nota de corte de 9.0.
-Adicionei borda no texto impresso nos stickers.
-Começei um processo de refatoração do código para facilitar o recebimento novas APIs, dessa maneira também acessei a API da Nasa que mostra as fotos do dia
-Criei a classe ClienteHttp para separa a gestão das urls das APIs.
-Criei o extrator de conteúdos para receber o JSON das APIs e fazer o tratamento específico para extrair os dados.
-Criei também uma classe Record para padronizar os conteúdos.
-Adicionei um Enum para gerenciar as URLs dos APIs.
- Criei a minha própria API (https://github.com/DharanCosta/API_Programing_Languages)
-Projeto Spring utilizando o MongoDB para guardar uma lista de linguagens de programação.
-Fiz um CRUD completo desta API, incluindo um endpoint que ordena por rank de linguagens preferidas.
-Retorna um JSON para ser consumido no Gerador de Stickers(imagem abaixo).
-Acrescentei no projeto o GSON parser para facilitar a extração de dados de diferentes APIs.
-Inclui no Gerador de Sticker um extartor específico para Linguagens.
- Testando todos os endpoints da API-Linguagens.
- Preparei o projeto para deploy.
- Deploy realizado com sucesso (http://api-linguagens-alura.herokuapp.com/linguagens/ranking).