/ImersaoJava_Alura

Gerador de Sticker para rede sociais através do consumo de diferentes APIs

Primary LanguageJava

ImersaoJava

Imersão Java - Alura

Gerador de Stickers

Descrição do projeto

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;

✔️ Técnicas e tecnologias utilizadas

  • Java 17
  • InteliJ IDEA
  • Biblioteca GSON
  • Paradigma de orientação a objetos

📁 Repositório API-Linguagens

https://github.com/DharanCosta/API_Programing_Languages

🏅 Reconhecimento time Alura

https://www.alura.com.br/imersao-java/projetos

Aula 01

-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.

Resultado da Aula 01

Aula 02

-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.

Resultado da Aula 02

Aula 03

-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.

Aula03jpg

-Criei também uma classe Record para padronizar os conteúdos. -Adicionei um Enum para gerenciar as URLs dos APIs.

Aula03Enunjpg

Exemplo dos sticker no Whatsapp

StickerWhatsappExample2

StickerWhatsappExample

Aula 04

Detalhes sobre essa API:

-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.

CRUD

-Retorna um JSON para ser consumido no Gerador de Stickers(imagem abaixo).

jsonAPIlinguagensjpg

-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.

Exemplo dos sticker no Whatsapp

StickersLinguagesn

Aula 05

🌎 Onde você me encontra? 🌍