16
Prof. Gilberto Braga de Oliveira Programação Orientada à Objetos Introdução Modelagem de objeto, classe, atributos e métodos em linguagem Java Desenvolvimento Guiado por Testes

Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

Programação Orientada à Objetos

IntroduçãoModelagem de objeto, classe, atributos e

métodos em linguagem JavaDesenvolvimento Guiado por Testes

Page 2: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

Objeto

● Elemento (físico ou abstrato) existente no mundo real, cujos dados são necessários ao sistema de informação baseado em computador (CBIS):– Exemplo: Sistema de Informação Financeiro

● Objetos prováveis: Faturas, Contas à Pagar, Contas à Receber; Fluxo de Caixa, Conta Corrente, Conta Poupança; Conta Caixa, etc.

– Exemplo2: Sistema de Informação para a Escola Técnica● Objetos prováveis: Estudante, Componente Curricular,

Professor, Curso, etc.

Page 3: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

Classes

● As classes são modeladas a partir dos objetos● A necessidade de manipular objetos obriga o arquiteto de

software (analista desenvolvedor) a modelar as classes necessárias para a criação dos objetos 'em tempo de execução'

● Sem classes, não há objetos● As classes são compostas pelo nome da classe, seus

atributos e métodos– Obs: A modelagem de classes é muito parecida com a modelagem

de Entidades (Modelo Entidade-Relacionamento), exceto pelo aspecto comportamental definido a partir dos métodos.

Page 4: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

Exemplo1: Classe EstudanteNome da Classe:- Substantivo no singular;- Sem espaço, cedilha ou acento;- Com a primeira letra maiúscula

Atributos da classe:- Substantivo no singular;- Sem espaço, cedilha ou acento;- Com a primeira letra minúsculae a primeira da segunda palavra maiúscula, conforme exemplo.

Métodos da classe:- Verbo no gerúndio;- Sem espaço, cedilha ou acento;- Com as primeiras letras minúsculas como os atributos- Seguido por parênteses.

Page 5: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

Exemplo2: Conta Corrente

Page 6: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

Modelagem de Classes (via código)

● Boas práticas de programação orientada à objetos recomendam a programação guiada por testes (Test Driven Development) TDD– Logo, é necessário criar uma classe de testes – ANTES –

de criar a classe que se deseja modelar

– Logo, se o nome da classe a ser criada é Estudante, então será modelada uma classe TesteEstudante para testá-la;

– Se a classe a ser modelada for ContaCorrente, criaremos antes a classe TesteContaCorrente, e assim por diante.

Page 7: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

Exemplo1: TesteEstudante1. Crie um projeto novo no NetBeans

1. Java → Aplicação Java

● Defina o nome do projeto

1. Auladdmm_Ref

2. ATENÇÃO: Não esqueça de desmarcar a opção criar classe principal!

Page 8: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

..continua...

3. Defina um pacote

1. Atribua o nome pct ao pacote. (todas as letras minúsculas)

4. Crie a classe de teste

1. TesteEstudante (porque a classe a ser modelada é a classe Estudante)

2. Observe o código gerado.

5. Obs: Recomenda-se fortemente que os arquivos não tenham seu caminho redirecionado para outro lugar para evitar perdas.

Page 9: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

Observe o código da classe de teste TesteEstudante

Page 10: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

1. Criação e instância de um objeto para testar a classe Estudante

● Para observar a criação correta da classe e garantir o seu funcionamento é preciso criar e instanciar um objeto da classe a ser modelada:

– 1. Crie o método main dentro da classe de teste

– 2. Crie e instancie o objeto da classe Estudante dentro do escopo do método main:

Page 11: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

2. Modelagem da classe principalEstudante

Page 12: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

3. Construção do objeto estudante1Modelagem de Atributos

1. Teste a atribuição de dados ao atributo na classe de teste

1. Evoque [ctrl + espaço] o objeto estudante1 adicione o operador ponto e informe o nome do atributo a ser modelado de acordo com o diagrama de classe.

2. Com o operador de atribuição faça o atributo receber um dado de teste.

Page 13: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

...continua...1. Modele, na classe Estudante, o atributo utilizado anteriormente na classe

de teste.

1. Defina o tipo de dado do atributo

2. Defina o nome do atributo

Page 14: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

...continua.● A repetição do processo descrito anteriormente para cada atributo garantirá que eles serão

modelados com a máxima atenção e a menor possibilidade de erros possível.

● Este processo garante a qualidade do código entregue

● Fique atento aos tipos de dados modelados na classe a ser modelada pois eles estão restritos à linguagem de programação utilizada, e aos dados atribuídos na classe de teste.

Page 15: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

4. Imprimir o objeto para teste:Modelagem de Métodos

1. Imprimindo o objeto na tela a partir do método executado na classe de teste:

1. Escrever um rótulo (enunciado) para informar o que será impresso na tela

2. Executar o método apresentarEstudante() utilizado a partir do operador de ponto depois do nome do objeto estudante1 na classe de teste.

Page 16: Programação Orientada à ObjetosIntrodução Modelagem de objeto, classe, atributos e métodos em linguagem Java ... (Test Driven Development) TDD ... Teste a atribuição de dados

Prof. Gilberto Braga de Oliveira

...continua.● Modelar o método apresentarEstudante() na classe Estudante.

– Definir a assinatura do método (nome do método e parâmetros, bem como a sua visibilidade e tipo de retorno