Laboratório 1
Objetivos
- Familiarizar o aluno com expressões, sentenças e princípios de interação entre objetos.
Descrição Geral
A idéia é que o aluno crie regras de operação (em Java) para o
funcionamento de dois objetos simples que permitem controlar um objeto gráfico.
O elemento gráfico pode ser visualizado imediatamente após a escrita das
regras. O processo de edição e compilação é completamente abstraído para que o
aluno se concentre na sintaxe e semântica das expressões que controlam a
posição do objeto gráfico.
Roteiro
- Baixe o aplicativo.
- Execute-o e navegue pela interface à vontade (explicar interface).
- Tente as regras simples apresentadas pelo professor.
- Crie regras para obter os seguintes comportamentos:
- Faça o ponto se deslocar de um lado a outro da tela, sem parar. Deve ser possível redimensionar a tela sem problemas.
- Faça o ponto descrever um quadrado com centro em 0,0.
- Faça o ponto descrever um retângulo com centro em 0,0 e cuja distância da borda seja igual a 20.
- Faça o ponto se deslocar aleatoriamente pela tela. O movimento deve ser em retas. Somente ao se chocar contra uma borda, o ponto deve mudar de direção. Sempre deve retornar com uma inclinação diferente.
- Faça o ponto se deslocar aleatoriamente pela tela. A direção do ponto deve mudar suavemente à medida em que se desloca. Também deve "rebotar" ao se chocar com uma parede.
- Faça o ponto se deslocar aleatoriamente pela tela. Desta vez, o ponto não deve ricochetear. O plano deve ser contíguo, de forma que ao "sumir" pela direita, o ponto reapareça pela esquerda e vice-versa. O mesmo vale para cima e para baixo.
- Faça o ponto se deslocar de forma acelerada. Use algum dos movimentos já vistos.
- Faça o ponto se deslocar como um círculo ao redor do centro.
- Faça o ponto se deslocar produzindo uma espiral.
- Faça o ponto se deslocar de forma a produzir o gráfico de uma função (tente funções quadráticas, cúbicas, logarítmicas, exponenciais, etc).
Questões
Responda às questões abaixo em um arquivo de texto. Envie o arquivo para o professor antes da próxima aula.
1: Registre todas as regras que você desenvolveu em um arquivo, nomeando-as.
2: O que é um objeto em uma linguagem de programação OO?
3: O que são tipos? Com quantos e quais tipos podemos tratar em programas Java?
4: O que são expressões? Dê exemplos.
5: Qual a semelhança e a diferença entre "variáveis", "atributos" ou "campos" e "parâmetros"?
6: O que são mensagens e métodos?
7: Quais os objetos envolvidos no aplicativo usado neste experimento? Como eles interagem?