A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução a Orientação a Objetos

Apresentações semelhantes


Apresentação em tema: "Introdução a Orientação a Objetos"— Transcrição da apresentação:

1 Introdução a Orientação a Objetos
Aula 5 Professor: Italo Rodrigues Castro

2 Conceitos OO A análise OO para o desenvolvimento de software baseia-se na utilização de objetos que colaboram para construir sistemas mais complexos. A colaboração entre objetos é feita através de envio de mensagens.

3 Conceitos OO OO produz modelos que especificam o domínio do problema de um sistema. Utilizam uma linguagem de programação Orientada a Objetos (Java, C#). Não basta apenas utilizar os mecanismos de sua linguagem de programação, deve-se saber utilizar da melhor maneira possível todas as técnicas da modelagem OO.

4 Princípios OO Qualquer coisa é um objeto.
Objetos realizam tarefas através da requisição de serviços a outros objetos. Cada objeto pertence a uma determinada classe. Uma classe agrupa objetos similares. A classe é um repositório para comportamento associado ao objeto. Classes são organizadas em hierarquias.

5 Características OO Reuso – Redução do tempo de desenvolvimento e manutenção de código. Modularidade – É a qualidade de um módulo que garante a sua capacidade de extensão e reuso. (Módulo= Baixo acoplamento + Alta coesão). (Associação e herança).

6 Características OO Abstração - é qualquer modelo que inclui os aspectos relevantes de alguma coisa, ao mesmo tempo em que ignora os menos importantes.

7 Objetos como abstrações
Uma abstração é uma representação das características relevantes de um conceito do mundo real para um determinado problema. Carro (para uma transportadora de cargas) Carro (para uma fábrica de automóveis) Carro (para um colecionador) Carro (para uma empresa de kart) Carro (para um mecânico)

8 Abstração Abstração depende do observador.

9 Características OO

10 Televisor (Jogo de futebol?!)
Características OO Uso do polimorfismo – Utilização de objetos semelhantes, mas não idênticos. Homem Mulher Televisor (Jogo de futebol?!)

11 Características OO Não se preocupa com detalhes de implementação, quando um objeto é criado você deve se preocupar somente em usá-los. É uma forma de restringir o acesso ao comportamento interno de um objeto. (Encapsulamento).

12 Características OO Analogia Pizzaria

13 Orientação a Objetos Um sistema de software orientado a objetos
consiste de objetos em colaboração com o objetivo de realizar as funcionalidades deste sistema. Cada objeto é responsável por tarefas específicas. É através da cooperação entre objetos que a computação do sistema se desenvolve.

14 Conceitos da Orientação a Objetos
Classes e objetos Mensagens Encapsulamento Polimorfismo Herança

15 Classes e objetos O mundo real é formado de coisas.
Na terminologia de orientação a objetos, estas coisas do mundo real são denominadas objetos.

16 Classes e objetos Importante: uma classe é uma abstração das características relevantes de um grupo de coisas do mundo real. Na maioria das vezes, um grupo de objetos do mundo real é muito complexo para que todas suas características sejam representadas em uma classe. Uma classe representa a estrutura de um objeto.

17 Classes e objetos Estrutura de uma classe Disciplina código: String
nome: String créditos:Num horasSemanais:Num AlterarDados() Nome da classe Atributos Métodos

18 Classes e objetos public class TEsfera { float raio; float velocidade;
float direcao; public void atribuiVelocidade(float v){ velocidade = v; } };

19 Classe X Objeto Classes são definições estáticas, que possibilitam o entendimento de um grupo de objetos. Objetos são abstrações de entidades que existem no mundo real. Objeto é uma instância de uma classe.

20 Mensagens Para que um objeto realize alguma tarefa, deve haver um estímulo enviado a este objeto. Pense em um objeto como uma entidade ativa que representa uma abstração de algo do mundo real Então faz sentido dizer que tal objeto pode responder a estímulos a ele enviados Assim como faz sentido dizer que seres vivos reagem a estímulos que eles recebem.

21 Mensagens Independentemente da origem do estímulo, quando ele ocorre, diz-se que o objeto em questão está recebendo uma mensagem. Uma mensagem é uma requisição enviada de um objeto a outro para que este último realize alguma operação.

22 Mensagens Objetos de um sistema trocam mensagens
isto significa que estes objetos estão enviando mensagens uns aos outros com o objetivo de realizar alguma tarefa dentro do sistema no qual eles estão inseridos.

23 Mensagens

24 Abstração na orientação a objetos
A orientação a objetos faz uso intenso de abstrações. Os princípios da orientação a objetos podem ser vistos como aplicações do Princípio da Abstração. Princípios: Encapsulamento Polimorfirmo Herança

25 Encapsulamento Objetos possuem comportamento.
O termo comportamento diz respeito a que operações são realizadas por um objeto e também de que modo estas operações são executadas.

26 Encapsulamento O encapsulamento é uma forma de restringir o acesso ao comportamento interno de um objeto. Um objeto que precise da colaboração de outro objeto para realizar alguma tarefa simplesmente envia uma mensagem a este último. O método (maneira de fazer) que o objeto requisitado usa para realizar a tarefa não é conhecido dos objetos requisitantes.

27 Encapsulamento Na terminologia da orientação a objetos, diz-se que um objeto possui uma interface. A interface de um objeto é o que ele conhece e o que ele sabe fazer, sem descrever como o objeto conhece ou faz. A interface de um objeto define os serviços que ele pode realizar e conseqüentemente as mensagens que ele recebe.

28 Encapsulamento Uma interface pode ter várias formas de implementação.
Mas, pelo Princípio do Encapsulamento, a implementação de um objeto requisitado não importa para um objeto requisitante.

29 Encapsulamento default Somente classes do mesmo package possuem acesso
public Todos possuem acesso protect Apenas os membros da classe e subclasse private Apenas os membros da classe

30 Televisor (Jogo de futebol?!)
Polimorfismo É a habilidade de objetos de classes diferentes responderem a mesma mensagem de diferentes maneiras. Homem Mulher Televisor (Jogo de futebol?!)

31 Polimorfismo public class Empregado { protected float salario;
public float getSalario() {return salario;} } public class Vendedor extends Empregado protected float comissao; public float getSalario() return salario+comissao;

32 Polimorfismo public class Empregado { protected float salario;
public void aumento() salario= salario*10.0; } public void aumento(float porcent) salario= salario*porcent;

33 Herança A herança pode ser vista como um nível de abstração acima da encontrada entre classes e objetos. Na herança, classes semelhantes são agrupadas em hierarquias. Cada nível de uma hierarquia pode ser visto como um nível de abstração. Cada classe em um nível da hierarquia herda as características das classes nos níveis acima.

34 Herança A herança facilita o compartilhamento de comportamento entre classes semelhantes. As diferenças ou variações de uma classe em particular podem ser organizadas de forma mais clara.

35 Herança class Empregado { protected float salario;
public float getSalario() {return salario;} } class Vendedor extends Empregado protected float comissao; public float getSalario() return salario+comissao;


Carregar ppt "Introdução a Orientação a Objetos"

Apresentações semelhantes


Anúncios Google