Programação Orientada a Objetos: Avaliando seu aprendizado

porLuis Augusto Moretto

Programação Orientada a Objetos: Avaliando seu aprendizado

Programação orientada a objetos

Trabalho avaliativo em duplas

Trabalho a ser desenvolvido em duplas. Cada dupla deve entregar um arquivo ZIP com os códigos em JAVA e um texto chamado readme.txt com o nome da equipe. O projeto deve ser desenvolvido utilizando a IDE Netbeans.

Você foi contratado para desenvolver um sistema orientado a objetos para uma Academia. Para tal projeto iremos utilizar a linguagem de programação Java. A Academia deseja evoluir o sistema portante faça a abstração e uma representação com baixo acoplamento e alta coesão. 

  1. A Academia quer gerenciar seus instrutores e os treinos dos alunos.
  2. A academia guarda as informações como Nome, CPF, RG, Carteira de Trabalho e carga horária de cada instrutor.
  3. Cada Cliente tem Nome, CPF, RG e horário de treino.
  4. Para cada cliente são armazenadas as informações do treino. 
  5. Cada treino consiste em uma atividade física que tem um número de repetições, um peso e nome Ex: Costas 30 repetições 20 kilos.
  6. Cada treinador tem um ou mais clientes
  7. Cada cliente tem uma ou mais atividades físicas em um treino.
  8. Utilize uma classe abstrata para generalizar o conceito de pessoa;
  9. Faça o Cliente e o Treinador herdarem desta classe abstrata (Pessoa);
  10. Crie um método para exibir o número de treinadores da academia;
  11. Desenvolva um método para exibir o total de clientes da academia;
  12. Implemente um método para exibir o total de clientes por treinador;
  13. Crie um método para associar um cliente a um treinador
  14. Crie um método para adicionar uma atividade física no treino do cliente
  15. Implemente um método para trocar o treinador do cliente
  16. Implemente um método para ver qual o cliente que puxa mais peso  e qual a média de peso (exercício) dos alunos da academia.
  17. Utilize a classe ArrayList no projeto conforme achar mais adequado.
  18. Crie um método para iniciar um modelo de treino para iniciantes. O método define um treino básico para o cliente (modelo) con N atividades físicas;

Lembre-se: Encapsule os atributos e as regras. Crie construtores conforme necessário. Ao final fazer um PSVM para inicializar os objetos, cadastrar treinador, cadastrar cliente e os treinos. Como a camada de apresentação (web mobile ou desktop) não foi definida implemente o PSVM para testar seus métodos.

Arquivos