Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/thiagohrcosta/lojadegames


https://github.com/thiagohrcosta/lojadegames

Last synced: 7 days ago
JSON representation

Awesome Lists containing this project

README

        

# Problema

Deseja-se fazer um sistema para armazenar as informações de uma locadora de jogos digitais. Cada jogo pode rodar em mais de uma plataforma (Xbox, PS3, PS4, PC, etc.). Cada jogo possui seu preço diário de locação, sendo que um mesmo jogo pode ter
preços de locação diferentes para cada plataforma. Quando um cliente (nome, email, telefone,
senha) deseja fazer uma locação, ele informa quais jogos ele quer locar, informando inclusive de
qual plataforma é cada jogo contido na locação a ser realizada. Quando a locação é realizada, a
data atual deve ser registrada para esta locação. Para cada jogo locado, o cliente informa quantos
dias ele deseja ficar com cada um (note que ele pode alugar, por exemplo, um jogo X da
plataforma Xbox por 2 dias e um jogo Y da plataforma PC por 5 dias, tudo para a mesma
locação). A locadora também possui alguns consoles de vídeo game, os quais podem ser usados
no local pelos clientes por um certo intervalo de tempo. Cada console possui um preço por cada
hora (ou fração) utilizada, e contém um conjunto de acessórios (headphone, controle, Kinect,
etc.).
Instância mínima: 2 plataformas, 2 jogos para cada plataforma, 2 clientes, 2 locações, 2 itens para cada locação, 2
consoles, pelo menos um console com mais de um acessório, pelo menos um cliente com mais de uma utilização de
console.

# Diagrama de Classes

![Diagrama de Classes](https://i.ibb.co/pQmR9Q0/Diagrama-De-Classes.jpg)

# Instâncias
![Instâncias](https://i.ibb.co/bBPZTb9/instanciadeclasse.jpg)

# Encapsulamento
A primeira versão deste código apresentam atributos públicos, sem a adoção do encapsulamento. Versões posteriores promoverão a atualização do código inserindo tais condições.