24
Engenharia de Software Unimep/Pronatec 2° Semestre AULA 14 - Prof. André Bertoletti - [email protected]

Engenharia de Software - Unimep/Pronatec - Aula 14

Embed Size (px)

Citation preview

Page 1: Engenharia de Software - Unimep/Pronatec - Aula 14

Engenharia de Software Unimep/Pronatec

2° Semestre

AULA 14

- Prof. André Bertoletti -

[email protected]

Page 2: Engenharia de Software - Unimep/Pronatec - Aula 14

Nossa agenda de hoje

• Orientação a Objeto (parte 2)

• Princípios da OO

• Demos

Page 3: Engenharia de Software - Unimep/Pronatec - Aula 14

Programação Orientada a Objetos

X

Programação Estruturada

Evo

luçã

o

Page 4: Engenharia de Software - Unimep/Pronatec - Aula 14

Principais diferenças

Page 5: Engenharia de Software - Unimep/Pronatec - Aula 14

Programação Estruturada

• Linguagens: C, Clipper, Cobol, Assembler, etc

• Mais performática

• Sequencial, sem muitos desvios

• Desaconselhável para aplicações modernas (Sites, Apps, etc)

• Possibilita pouco reuso de código

• Etc...

Page 6: Engenharia de Software - Unimep/Pronatec - Aula 14

Programação Orientada a Objetos

• Linguagens: C++, C#, Java, Python, Ruby, etc

• Menos performática

• Execução NÃO sequencial, com muitos desvios

• Aconselhável para aplicações modernas (Sites, Apps, etc)

• Possibilita muito reuso de código

• Etc...

Page 9: Engenharia de Software - Unimep/Pronatec - Aula 14

A abstração consiste em um dos pontos mais importantes dentro de qualquer linguagem Orientada a Objetos. Como estamos lidando com uma representação de um objeto real (o que dá nome ao paradigma), temos que imaginar o que esse objeto irá realizar dentro de nosso sistema.

– Identidade

– Propriedades

– Métodos

Abstração

Page 10: Engenharia de Software - Unimep/Pronatec - Aula 14

Abstração

Identidade: Gato

Eventos (ações) • Miar • Comer • Andar • Brincar • (etc..)

Propriedades: • Nome • Tamanho • Cor • Peso • Raça • (etc..)

Page 11: Engenharia de Software - Unimep/Pronatec - Aula 14

Abstração

Page 12: Engenharia de Software - Unimep/Pronatec - Aula 14

Show me the CODE!

Page 13: Engenharia de Software - Unimep/Pronatec - Aula 14

Declarando a CLASSE Gato

Page 14: Engenharia de Software - Unimep/Pronatec - Aula 14

Instanciando e usando o OBJETO Gato

Page 15: Engenharia de Software - Unimep/Pronatec - Aula 14

Herança

O reuso de código é uma das grandes vantagens da programação orientada a objetos. Muito disso se dá por uma questão que é conhecida como herança. Essa característica otimiza a produção da aplicação em tempo e linhas de código.

Exemplos:

O objeto Mesa herda do objeto Móvel

O objeto Carro herda do objeto Veículo

Page 16: Engenharia de Software - Unimep/Pronatec - Aula 14

Outro exemplo de Herança

Animal

Mamífero

Felino

Page 17: Engenharia de Software - Unimep/Pronatec - Aula 14

Show me the CODE!

Page 18: Engenharia de Software - Unimep/Pronatec - Aula 14

Declarando a classe base Animal

(somente com aquilo é que comum a todos os animais)

Page 19: Engenharia de Software - Unimep/Pronatec - Aula 14

Declarando a classe derivada Mamifero que herda da classe base Animal

(somente com aquilo é que comum a todos os mamíferos, e por herança, tudo aquilo que os animais

também fazem/possuem)

Page 20: Engenharia de Software - Unimep/Pronatec - Aula 14

Declarando a classe derivada Felino que herda da classe base Mamifero

(somente com aquilo é que comum a todos os felinos, e por herança, tudo aquilo que os mamíferos e animais

também fazem/possuem)

Page 21: Engenharia de Software - Unimep/Pronatec - Aula 14

Declarando a classe derivada Gato que herda da classe base Felino

(somente com aquilo é que comum a todos os gatos, e por herança, tudo aquilo que os felinos, mamíferos e

animais também fazem/possuem)

Page 22: Engenharia de Software - Unimep/Pronatec - Aula 14

Declarando a classe derivada Leao que herda da classe base Felino

(somente com aquilo é que comum a todos os leões, e por herança, tudo aquilo que os felinos, mamíferos e

animais também fazem/possuem)

Page 23: Engenharia de Software - Unimep/Pronatec - Aula 14

Instanciando e usando os objetos Gato e Leão

Page 24: Engenharia de Software - Unimep/Pronatec - Aula 14

Por hoje é só!

Agora é hora de estudar!