Lab 3
Lab 3
Instituto de Computação
Laboratório 3
Monopoly
MC322 - Programação Orientada a Objetos
Professora: Esther Colombini
PEDs: Cristiano Gabriel de Souza Campos / Wladimir Arturo
Garces Carrillo
1. Descrição Geral
Monopoly é um dos jogos de tabuleiro mais populares do mundo, em que propriedades como bairro,
casas, hotéis, empresas são compradas e vendidas, enquanto jogadores adiquirem diversos recursos e outros
vão à falência. No Brasil, inspirou o jogo Banco Imobiliário. Existem mais de 1.200 edições do Monopoly
licenciadas oficialmente em todo o mundo, cada uma oferecendo um toque único no jogo clássico. Essas
edições vão desde franquias e cidades populares até edições especiais comemorando aniversários ou eventos.
Ao longo dos laboratórios, vamos construir um jogo de Monopoly.
Neste Laboratório (03), vamos fixar os conceitos vistos até então e apresentar novos conceitos como:
2. Objetivos
Os objetivos principais do Laboratório 3 são os seguintes:
Capacidade de abstração de como aplicar os conceitos de orientação objetos em face das funcionalidades
requeridas.
3. Atividades
As atividades a serem desenvolvidas para este Laboratório são as seguintes:
Implementação do conceito de Herança simples através das classes Carta, Carta Sorte, Propriedade,
Estacao, Servico Publico e Terreno;
Implementação dos métodos para relacionamento entre as classes, conforme previsto no diagrama.
Mesmo que os métodos não estejam apresentados no diagrama, você deve identificá-los e implementá-
los. Por exemplo, o método que relaciona jogador à peça na classe Jogador, o método que adiciona ao
jogador uma carta, etc.
Implementação de um método na classe Main que seja capaz de ler dados do teclado (utilizando a
classe Scanner no pacote System.in), e, de acordo com esse dados de entrada, exiba novo conteúdo na
tela (um exemplo seria a implementação de um menu textual que liste opções para visualizar o estado
atual de cada Jogador (onde ele está no tabuleiro, quais as suas cartas atuais, quanto dinheiro ele tem,
etc.)
1
Figura 1: Diagrama de Classe
4. Avaliação
Além da correta execução do laboratório, os seguintes critérios serão utilizados para a composição da
nota do laboratório:
2
5. Entrega
A entrega do Laboratório é realizada exclusivamente via Github. Para a submissão no Github,
gere um release (tag) com a identificação do laboratório no estilo <lab03-RA>. Por exemplo, para o
aluno com RA 123456, a tag será: lab03-123456.
Observação: Evite criar releases enquanto não tiver certeza que seu código está funcionando como
esperado.
Utilize os horários de laboratório e atendimentos para tirar eventuais dúvidas de submissão e também
relacionadas ao desenvolvimento do laboratório.
Prazo de Entrega: 05/05 - 23h59