38
Novidades... • Quartetos; Equilibrar Conhecimento; Aprender a Ensinar; Trabalho em Equipe; Facilitar a Vida do Professor. Então, definam seus grupos e o líder do grupo. Trilha Sonora (bem, se eu conseguir som...) Sempre na segunda parte das quartas-feiras..se der certo, podemos ter mais vezes. Ah...Sempre, o melhor quarteto escolhe a próxima

Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

Embed Size (px)

Citation preview

Page 1: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

Novidades...• Quartetos;

– Equilibrar Conhecimento;– Aprender a Ensinar;– Trabalho em Equipe;– Facilitar a Vida do Professor.– Então, definam seus grupos e o líder do

grupo.

• Trilha Sonora (bem, se eu conseguir som...)

– Sempre na segunda parte das quartas-feiras..se der certo, podemos ter mais vezes.

– Ah...Sempre, o melhor quarteto escolhe a próxima trilha sonora.

Page 2: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

Programação Orientada a Objetos II – Aula 5

Objetivo Individual

Criar uma classe útil com atributos e métodos.

Objetivo do Quarteto

Criar um Desenho com pelo menos 10 objetos. Deve haver pelo menos um objeto de cada classe.

Page 3: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

Plano de Trabalho

Revisar Criação de Classe.

Individual – Cada um cria uma classe que

vamos usar para desenhar.

Em quarteto – Criem um desenho com 10 objetos. 1 de cada classe no mínimo.

Vale Nota

Page 4: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

Revisão Criação de Classe

• Criem um projeto e Vamos lá.!

Page 5: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

1° Passo

• Excluam a Classe Main.

Mas, porque isso professor???Queremos aprender a programar. É importante saber o que estamos fazendo..como começo um programa em java,o que significa static, void, main, etc..

E se não praticamos nossa escrita, dificilmente lembraremos.

Page 6: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

2° Passo• Criem a classe principal do programa de Vocês. O NetBeans chama essa

classe de Main. Eu vou chamar de TestaPrograma, e vocês? Ah, mudem o nome do pacote também, ele é do programa de vocês, podem chamar como quiser.

Page 7: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

3° Passo

• Bem, está faltando alguma coisa certo? Alguém pode me dizer o que é?.

Page 8: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

3° Passo• Isso, o método Principal.!!!

Lembre-se: O Java precisa começar de algum lugar. Esse lugar é o método main.

Professor, posso começar de outro lugar???

R: Não.

Page 9: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

4° Passo • Bem, estamos aqui para falar de objetos, programação estruturada vocês já

sabem...aliás, porque mesmo é bom usar Orientação a Objetos ao invés de programação estruturada?

Alguém pode ajudar??

Page 10: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

4° Passo O que faz esse código???

E este?

Page 11: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

4° PassoTchãrammmmmmmmm

Page 12: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

4° Passo O que faz esse código???

Page 13: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

4° Passo E esse??

Page 14: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

4° PassoTchãrammmmmmmmm

Page 15: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

4° PassoVantagens da Orientação a Objetos

1 - Leitura de Código. 2 - Organização de Código.

Como assim organização de código?

Page 16: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

2 - Organização de Código.Exemplo de classe PainelDesenho com um método para cada desenho.

100 linhas para 6 objetos diferentes.

E se tivéssemos 30 objetos??E se estivéssemos fazendo um jogo e verdade, com algumas centenas de formas diferentes?

Seria viável colocar tudo em um único arquivo?

Seria fácil localizar os métodos que precisassem de alteração?Bem, vamos ver como que fica com OO

Page 17: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

2 - Organização de Código.Com uma classe para cada desenho fica bem mais fácil encontrar o código que preciso alterar.

Além do mais, fica mais fácil de visualizar tudo que posso utilizar no sistema.

Sempre que eu precisar desenhar algo posso olhar a lista de classes de desenho, assim como, quando precisamos de algum recurso especial procuramos as classes do Java.

Aliás, o Java tem 3500 classes, já imaginou tudo isso em programação estruturada? Eu não.!!

Page 18: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

4° PassoVantagens da Orientação a Objetos

1 - Leitura de Código. 2 - Organização de Código.

Vamos dar uma olhada no exemplo do cenário..

Concordam com meus argumentos?

Page 19: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

5° PassoEntão, Vamos relembrar como construímos uma classe

COR

Ponto X,Y

DiâmetroQuais as Caracterísiticas de um Círculo?

Page 20: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

6° PassoArquivo Circulo.java

Page 21: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

6° Passo

ESCOPO

Declaração de Variáveis

TIPO NOME

PPP

public

protected

private

intfloatdoubleStringColorCirculoJFrameCenarioGraphics

xycorcorVerdejanelaabobrinhafrutanomepreco

private Color cor;

public String nome;

Page 22: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

public String matricula;

int x;

private cor;

private Color corVermelha;

Circulo meuPrimeiroCirculo;

protected Quadrado meuPrimeiroQuadrado;

JFrame janelaPrincipal;

public painel painelDesenho;

public JPanel painelDesenho;

private String;

private int x;

private Color cor;

public Circulo meuPrimeiroCirculo

private Color cor;

private Color cor;

private Color cor;

Page 23: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

6° PassoArquivo Circulo.java

Page 24: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

6° PassoArquivo Circulo.java

Page 25: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

6° PassoPara treinar.. Pessoa.java

Page 26: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

6° PassoPara treinar.. Pessoa.java

Page 27: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

7º - public, protected e privatePodemos usar atributos como publicos??

Vamos testar.!!

Page 28: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

7º - public, protected e privateSe funciona, qual o problema??

Page 29: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

7º - public, protected e privateSe funciona, qual o problema??

• Por algum erro do Sistema ou de usuário um atributo pode assumir um valor inválido;

• Para termos segurança que o valor daquele objeto sempre será válido, deixamos que somente a classe cuide dele, assim, tornamos o atributo private.!

Como boa prática de programação, nossos atributos sempre terão o escopo private.

Page 30: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

8º - get e setQuando devemos usar??

Somente quando for necessário.!! Única e exclusivamente quando for necessário.

Page 31: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

8º - get e set

Page 32: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

Façam testes com os outros atributosPrincipalmente o atributo Color

Page 33: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

9º Passo

• Criando métodos úteis;• Uma classe não serve somente para guardar

atributos, ela deve também executar ações que façam sentido.

• Por exemplo, se nosso círculo tem uma posição x e y na tela, podemos movê-lo para a esquerda, direita, cima e baixo, certo?

• Vamos tentar..podemos começar pelo método moverParaEsquerda(...);

Page 34: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos
Page 35: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos
Page 36: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

10º Passo - Praticar1. Reescrever a classe do objeto de vocês

considerando o que foi discutido.2. Criar apenas os get’s e set’s necessários.3. Criar métodos para mover o objeto.4. Exibir um PainelDesenho com vários desenhos

do seu objeto, mudando sua posição , cores e demais atributos.

Vale Nota50% da nota do dia.Entrega do projeto Netbeans Compactado por email [email protected]

Page 37: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

Atividade em Quarteto

• Criar um Painel de Desenho que tenha pelo menos 10 objetos.

• Deve haver no mínimo 1 objeto de cada Classe.

• Os atributos dos objetos desenhados devem ser alterados.

Vale Nota

50% da nota do dia.Entrega do projeto Netbeans pelo LíderDo quarteto com o nome de todos do grupo compactado [email protected]

Page 38: Novidades... Quartetos; – Equilibrar Conhecimento; – Aprender a Ensinar; – Trabalho em Equipe; – Facilitar a Vida do Professor. – Então, definam seus grupos

Vai uma música??