An open API service indexing awesome lists of open source software.

https://github.com/nataliafrancisca/seven-days-of-code-java

seven days of code learning java
https://github.com/nataliafrancisca/seven-days-of-code-java

7daysofcode collections-java gson java java-net-http the-movie-db

Last synced: 2 months ago
JSON representation

seven days of code learning java

Awesome Lists containing this project

README

        

# SEVEN DAYS OF CODE - JAVA

🌟 **Desafio:** Durante 7 dias, consumimos a API do TMDB para obter filmes e programas de TV, manipulando JSON e gerando um HTML com as informações.

🎯 **Objetivo:** Aprender e aplicar conceitos fundamentais de Java, incluindo consumo de APIs, manipulação de Strings, JSON e boas práticas de código.

> *Desafio proposto pela Alura: [Seven Days of Code](https://7daysofcode.io/matricula/java)*

## Cronograma:
- [X] dia 1: consumir api
- [X] dia 2: trabalhar com JSON, Strings e Regex
- [X] dia 3: modelando um domínio
- [X] dia 4: gerando o HTML
- [X] dia 5: encapsulando o código
- [X] dia 6: criando abstrações
- [X] dia 7: ordenando elementos

## Stack:
- **Java**
- **Maven**
- **GSON** (para manipulação de JSON)
- **TMDB API** (The Movie Database)

## Funcionalidades
- Consumo de dados da **API TMDB** (filmes e programas de TV).
- Manipulação e parsing de JSON com a biblioteca **GSON**.
- Encapsulamento e abstração do código para maior modularidade.
- Geração de uma página HTML dinâmica com as informações obtidas.
- Ordenação dos dados por título antes da exibição.

## Melhorias:
- Adicionar tratamento de erros nas chamadas da API.
- Refatorar as classes `Mapper` e `Parser` para maior clareza e eficiência.
- Melhorar o estilo visual do HTML gerado.

## Como Executar o Projeto

1. Clone o repositório:

```bash
git clone https://github.com/NataliaFrancisca/seven-days-of-code-java.git
3. Acesse a pasta do projeto:

```bash
cd seven-days-of-code-java

4. Acesse o arquivo `Main.java` para adiconar sua chave da API.
5. Execute o arquivo Main.java para criar as páginas dinâmicamente.

## Autora:
- [@nataliaFrancisca](https://www.github.com/NataliaFrancisca)