Prof. Silvestri – todos os direitos reservados SISTEMAS DISTRIBUIDOS Aula 5 Eduardo Silvestri silvestri@eduardosilvestri.com.br www.eduardosilvestri.com.br.

Download Prof. Silvestri – todos os direitos reservados SISTEMAS DISTRIBUIDOS Aula 5 Eduardo Silvestri silvestri@eduardosilvestri.com.br www.eduardosilvestri.com.br.

Post on 22-Apr-2015

105 views

Category:

Documents

2 download

Embed Size (px)

TRANSCRIPT

  • Slide 1
  • Prof. Silvestri todos os direitos reservados SISTEMAS DISTRIBUIDOS Aula 5 Eduardo Silvestri silvestri@eduardosilvestri.com.br www.eduardosilvestri.com.br
  • Slide 2
  • Prof. Silvestri todos os direitos reservados Orientao a Objetos
  • Slide 3
  • Prof. Silvestri todos os direitos reservados Conceitos - O que so Objetos? - Objeto: * -1. Tudo que se oferece aos nossos sentidos ou nossa alma. 2. Coisa material: Havia na estante vrios objetos. 3. Tudo que constitui a matria de cincias ou artes. 4. Assunto, matria. 5. Fim a que se mira ou que se tem em vista-. - Objeto a abstrao de coisas do mudo real!
  • Slide 4
  • Prof. Silvestri todos os direitos reservados Objetos - Exemplos:
  • Slide 5
  • Prof. Silvestri todos os direitos reservados Objetos - Exemplos: Automvel
  • Slide 6
  • Prof. Silvestri todos os direitos reservadosObjetos Objetos so coisas do mundo real ou imaginrio, que podemos de alguma forma identificar, como uma pedra, uma caneta, um copo, uma fada. Um objeto tem determinadas propriedades que o caracterizam, e que so armazenadas no prprio objeto. As propriedades de um objeto so chamadas ainda de atributos. O objeto interage com o meio e em funo de excitaes que sofre, realiza determinadas aes que alteram o seu estado (seus atributos). Os atributos de um objeto no so estticos, eles sofrem alteraes com o tempo. Para a POO, um objeto uma entidade nica que rene atributos e mtodos, ou seja, rene as propriedades do objeto e as reaes as excitaes que sofre.
  • Slide 7
  • Prof. Silvestri todos os direitos reservadosObjetos Quando temos uma instncia de uma classe, ns temos um objeto desta classe. Instncia um outro nome que se d ao objeto, geralmente se refere a um objeto especfico. Identidade2: A identidade uma propriedade que permite identificar univocamente um objeto. Os objetos se distinguem por sua prpria existncia, independente de seu contedo. Dois objetos so distintos mesmo que todos os seus atributos sejam iguais, ou seja, existe um nico identificador para cada objeto.
  • Slide 8
  • Prof. Silvestri todos os direitos reservados 1.O que um Objeto se visto pelo mundo real ? 2.O que um Objeto se visto por O.O. ? 3.Podemos ter objetos iguais ? Porque ? Exemplifique. 4.O que uma instancia ? PERGUNTAS
  • Slide 9
  • Prof. Silvestri todos os direitos reservados Conceitos - Objetos possuem 4 caractersticas: - Identidade: 2 objetos so distintos mesmo que todos os valores de seus atributos sejam iguais. - Classificao: Objetos com a mesma estrutura de dados (atributos) e mesmo comportamento (operaes) so agrupados em uma classe. - Polimorfismo: A mesma operao pode atuar de modos diversos em classes diferentes. - Herana: Compartilhamento de atributos e operaes entre classes com base em um relacionamento hierrquico.
  • Slide 10
  • Prof. Silvestri todos os direitos reservados Conceitos - * A abordagem baseada em objetos preocupa-se primeiro em identificar os objetos contidos no domnio da aplicao e depois em estabelecer os procedimentos relativos a eles. Embora isso possa parecer mais indireto, o software baseado em objetos mantm-se melhor medida que os requisitos evoluem, por se apoiar na prpria estrutura fundamental do domnio da aplicao, ao invs de apoiar-se nos requisitos funcionais ad hoc de um nico problema.
  • Slide 11
  • Prof. Silvestri todos os direitos reservados Conceitos - 6 Caractersticas da Tecnologia Baseada em objetos: - Abstrao: Concentrao nos aspectos essenciais, prprios, de uma entidade e em ignorar suas propriedades acidentais. - Encapsulamento: Separao dos aspectos externos de um objeto, acessveis por outros, dos detalhes internos da implementao que ficam ocultos dos demais. - Combinao de Dados e Comportamento: Polimorfismo dos objetos. - Compartilhamento: Compartilhar a estrutura comum (classes) por diversas subclasses sem redundncias (Herana). - nfase na Estrutura de Objetos: Especificar o objeto e no como ele utilizado. - Sinergia: Seguir todas as caractersticas simultaneamente.
  • Slide 12
  • Prof. Silvestri todos os direitos reservados Atributos Mas voc sabe que o funcionamento do objeto televisor extremamente complexo e que ao selecionar um novo canal, uma srie de atributos internos so processados e alterados. Os atributos e funes internas esto encapsuladas, escondidas de voc. Para a anlise orientada a objeto, encapsulamento o ato de esconder do usurio informaes que no so de seu interesse. O objeto atua como uma caixa preta, que realiza determinada operao mas o usurio no sabe, e no precisa saber, exatamente como. Ou seja, o encapsulamento envolve a separao dos elementos visveis de um objeto dos invisveis.
  • Slide 13
  • Prof. Silvestri todos os direitos reservados Atributos A vantagem do encapsulamento surge quando ocorre a necessidade de se modificar um programa existente. Por exemplo, voc pode modificar todas as operaes invisveis de um objeto para melhorar o desempenho do mesmo sem se preocupar com o resto do programa. Como estes mtodos no so acessveis ao resto do sistema, eles podem ser modicados sem causar efeitos colaterais.
  • Slide 14
  • Prof. Silvestri todos os direitos reservados Atributos A todo objeto podemos relacionar alguns atributos (propriedades). No exemplo do relgio a hora, a data. Na programao orientada a objeto, os atributos so definidos na classe e armazenados de forma individual ou coletiva pelos objetos. Exemplo: A hora de um relgio. Cada relgio tem uma hora, que pode ou no estar certa.
  • Slide 15
  • Prof. Silvestri todos os direitos reservados Mtodos A todo objeto podemos relacionar determinados comportamentos, aes e reaes. As aes ou comportamento dos objetos so chamadas na anlise orientada a objeto de mtodos,assim, um mtodo uma funo, um servio fornecido pelo objeto. Os comportamentos dos objetos so definidos na classe atravs dos mtodos e servem para manipular e alterar os atributos do objeto (alteram o estado do objeto).
  • Slide 16
  • Prof. Silvestri todos os direitos reservados Mtodos Mensagens: Foi falado que um objeto tem determinados atributos (propriedades) e mtodos (aes), e que o objeto reage ao meio que o envolve de acordo com as excitaes que sofre. Em um programa orientado a objeto as excitaes so representadas por mensagens que so enviadas a um objeto. Uma mensagem pode ser gerada pelo usurio, por exemplo, ao clicar o mouse.
  • Slide 17
  • Prof. Silvestri todos os direitos reservados Mtodos Protocolo: O protocolo o conjunto de mtodos que podem ser acessados pelo usurio, o conjunto de mensagens a que o objeto responde. Ou seja, o protocolo o conjunto de mtodos pblicos da classe.
  • Slide 18
  • Prof. Silvestri todos os direitos reservados 1.O que Abstrao ? 2.O que Encapsulamento ? 3.O que Herana ? 4.O que Atributo ? Exemplifique. 5.O que Metodo ? Exemplifique. 6.O que so mensagens em O.O. ? 7.O que protocolo em O.O ? PERGUNTAS
  • Slide 19
  • Prof. Silvestri todos os direitos reservadosClasses Quando falamos de classes, lembramos de classes sociais, de classes de animais (os vertebrados), de classes de objetos da natureza, de hierarquias. Ou seja, uma classe descreve um grupo de objetos com os mesmo atributos e comportamentos, alm dos mesmos relacionamentos com outros objetos. Para a anlise orientada a objeto, uma classe um conjunto de cdigos de programao que incluem a definio dos atributos e dos mtodos necessrios para a criao de um ou mais objetos. A classe contm toda a descrio da forma do objeto, um molde para a criao do objeto, uma matriz geradora de objetos, uma fbrica de objetos. Uma classe tambm um tipo definido pelo usurio.
  • Slide 20
  • Prof. Silvestri todos os direitos reservados Conceitos R (x, y) Crculo Abstrao Raio: Real x : Real y : Real Mover( x, y) Aumentar( R) Crculo Classe Atributos Mtodos
  • Slide 21
  • Prof. Silvestri todos os direitos reservados Conceitos Raio: Real x : Real y : Real Mover( x, y) Aumentar( R) Crculo Raio: Real x : Real y : Real Mover( x, y) Aumentar( R) Geralmente, funes so o nico meio de acesso as atributos da classe!! Dados privados Funes membro pblicas
  • Slide 22
  • Prof. Silvestri todos os direitos reservados Conceitos Raio: Real x : Real y : Real Mover( x, y) Aumentar( R) Crculo Definio para dados privados Definio para dados pblicos
  • Slide 23
  • Prof. Silvestri todos os direitos reservados Forma Geral de uma Classe class nome-da-classe { private: dados e funes privadas public: dados e funes pblicas };
  • Slide 24
  • Prof. Silvestri todos os direitos reservados Construtor e Destrutor - Construtor: Como o encapsulamento de dados comum, o C++ permite aos objetos serem inicializados (iniciados) por si mesmo quando criados. Por exemplo, alocao dinmica de memria. - Destrutor: Em diversos casos necessrio realizar alguma(s) ao(es) para o objeto poder ser destrudo. Por exemplo, desalocao dinmica de memria.
  • Slide 25
  • Prof. Silvestri todos os direitos reservados Construtor e Destrutor Construtor e Destrutor so chamados automaticamente na criao de um Objeto!
  • Slide 26
  • Prof. Silvestri todos os direitos reservados 1.O que uma Classe ? Exemplifique. 2.Qual a diferena entre dados privados e publicos ? 3.O que um construtor ? 4.Como funciona um construtor ? 5.Para que serve um construtor ? PERGUNTAS
  • Slide 27
  • Prof. Silvestri todos os direitos reservados Dvidas ?
  • Slide 28
  • Prof. Silvestri todos os direitos reservados MAPA CONCEITUAL