Início Profile Projeto
Avatar de

Durval do Vale Printes

imersao

PROJETO DE IMERSÃO EM JAVA

Status


Projeto iniciado na imersão, com o intuito de conhecer outras ferramentas, bibliotecas e técnicas para aprimorar o meu conhecimento no desenvolvimento WEB com Java.

📝 Sumário

🧐 Sobre

Código a ser desenvolvido ao longo dessa imersão, aplicando o meu conhecimento em Java.

🏁 Começando

Necessário conhecimento básico da linguagem Java. Faz uso da JDK 11, podendo ser alterado para qualquer versão, mas atenção, nesse cenário haverá alta possibilidade de quebra, corrija os erros na refatoração. Veja a seção de Desenvolvimento para saber o que vem por aí.

Pre-requisitos

Verifique a versão do Java, que está instalado na sua máquina com o seguinte comando:

java --version

Instalação

Caso não tenha instalado, ou precise atualizar para uma versão mais recente, existe muitos tutoriais na internet que ajudam a fazer isso, de acordo com seu sistema operacional. Caso tenha dificuldade, só enviar um email, ou mensagem no Discord, que tentarei ajudar.

🚀 Execução

Faça os seguintes passos:

Compilando e empacotando o projeto para gerar o arquivo JAR :

mvn clean package

E adicionando os parâmetros (Keys), para autenticação, nas requisições das APIs:

 java -Dimdb_key=${IMDB_KEY} -Dmarvel_public_key=${MARVEL_PUBLIC_KEY} -Dmarvel_private_key=${MARVEL_PRIVATE_KEY}
 -jar target/imersao-1.0-SNAPSHOT-jar-with-dependencies.jar

🎈 Saída

Exemplos da saída atual:

Saida Padrão da Api do IMDB

Saída com coleto de Nota da Api do IMDB

Geração personalizada de Stickers da API do IMDB

Saída com informações da Api da MARVEL

Geração de Sticker da Api da MARVEL

Geração de Sticker da Api da Alura Challenge

🔧 Desenvolvimento

Conteúdo a partir da Aula 03 e refatorações para Aula 04:

  • Reestruturação do projeto para consumir a Api da MARVEL.
  • Sobrescrita do método de saída no terminal com informações da nova Api;
  • Sobrescrita do método de geração de Stickers para imagens da nova Api;
  • Uso de uma classe de exceção personalizado;
  • Automatizar a criação da instância da interface StickerApi de acordo com o endpoint a ser consumido;
  • Upgrade da JDK do projeto, versão 17, para implementar casos de uso com classes Record;
  • Uso de uma classe abstrata, para separar os métodos relacionados aos dados, oriundos do consumo das Apis;
  • Adição de campo imagem e campos para cálculo de pontuação no modelo utilizado em uma terceira Api, desenvolvida em um Challenge de Back-end na Alura, para ser utilizada como um microsserviço: Spring Boot API
  • Implementação para consumo da Api Alura Challenge em localhost;
  • Criação de classes de testes;
  • Refatorações com base no SOLID e Design Pattern;

⛏️ Ferramentas

  • Java - Java JDK
  • Maven - Apache Maven Project

✍️ Colaboradores

🎉 Agradecimento

  • A todos que participam e ajudaram a tirar do papel essa imersão