0
Programação       Orientada a Objetos    Unidade I – Introdução aoParadigma da Orientação a Objetos                       ...
ObjetivoCitar características, vantagens edesvantagens do paradigma da orientação aobjetos, comparando-a com o paradigmaes...
Roteiro●   Introdução●   O Paradigma da tecnologia de objetos;●   Modelagem conceitual (abstração);●   Processos de abstra...
Introdução●    Uma construção de um programa    implicará em definir um modelo de    resolução e isso envolve um estudo do...
Introdução (cont.)•    Como construir um modelo de resolução (ou     modelagem do problema)?    –  Existem para isso vário...
O Paradigma da Orientação a                   Objetos●    O mundo real é constituído por entidades;●    Entidade: “Alguma ...
O paradigma da Orientação a                        Objetos●    Segundo o dicionário português (s. m.):    –   Tudo o que s...
O paradigma da Orientação a                      Objetos●    No mundo computacional, embora não signifique algo    concret...
O Paradigma da Orientação a          Objetos: definição preliminar●    Um software consiste em um entidade    (objeto), ex...
Modelagem Conceitual                                              Refere-se àsOperação mental                             ...
Abstração●    Ex.: Problema: “determinar a média final de um aluno”;    – Aspectos relevantes: Suas notas, assiduidade, pa...
Abstração (cont.)●    Sempre dependerá do CONTEXTO, ou seja,    do PONTO DE VISTA;●    Deve enfatizar as características e...
Abstração       “a beleza está nos olhos de quem a vꔕ Diferentes abstrações a partir de um mesmo objeto  do mundo real  ...
Conclusão (Abstração)●    A forma de representação depende do tipo de    problema e dos objetivos;●    Um arquiteto deve r...
Operações de Abstração•   É importante que se conheça os operações usadas    durante o processo de abstração que envolve  ...
Classificação / Instanciação●    Cada entidade possui determinadas características    que a identificam;●    Ex.: Carro = ...
Classificação●    Uma categoria define o conjunto de    características que devem ser apresentados    por um objeto;●    C...
Instanciação●    Ao construímos um objeto contendo todas as    características de determinada classe,    estamos fazendo u...
VisualizandoCATEGORIA (CLASSE)             Estudante                de             Graduação                          CLAS...
Classificação / Instanciação                   (conclusão)●    Classificação: Operação que tem por    objetivo, através da...
Generalização / Especialização●    Imagine um profissional formado em computação    (objeto) pertencente à classe bacharel...
VisualizandoCATEGORIA (CLASSE)            Estudante                         GENERALIZAÇÃO                                 ...
Visualizando (cont.)  CATEGORIA (CLASSE)                       Mamífero   Atributos •sangue quente •vertebrado •vivíparo  ...
Generalização / Especialização                   (Conclusão)●    Generalização: Operação de análise de um    conjunto de c...
Agregação / Decomposição●    Como vimos, um objeto possui determinadas    características:    – Características de decompo...
Agregação / Decomposição                   (cont.)●    Quando unimos um conjuntos de objetos, com o    objetivo de formarm...
VisualizandoCATEGORIA(CLASSE)               Estudante                            AGREGAÇÃO                             (co...
Associação●    Apresenta um determinado relacionamento,    caracterizado pela ligação entre suas entidades;     – Ex.: Pro...
Exercícios             Prof. Nécio Veras
Upcoming SlideShare
Loading in...5
×

Introdução ao paradigma OO

1,021

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,021
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
64
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Introdução ao paradigma OO"

  1. 1. Programação Orientada a Objetos Unidade I – Introdução aoParadigma da Orientação a Objetos Prof. Nécio de Lima Veras http://lattes.cnpq.br/8284657916723590
  2. 2. ObjetivoCitar características, vantagens edesvantagens do paradigma da orientação aobjetos, comparando-a com o paradigmaestruturado. Prof. Nécio de Lima Veras http://lattes.cnpq.br/8284657916723590
  3. 3. Roteiro● Introdução● O Paradigma da tecnologia de objetos;● Modelagem conceitual (abstração);● Processos de abstração;● Operações de abstração. Prof. Nécio Veras
  4. 4. Introdução● Uma construção de um programa implicará em definir um modelo de resolução e isso envolve um estudo do problema (contexto e aspectos importantes); Prof. Nécio Veras
  5. 5. Introdução (cont.)• Como construir um modelo de resolução (ou modelagem do problema)? – Existem para isso vários paradigmas: 1. Meio Procedural (computador é uma máquina que apenas obedece ordens); 2. Meio funcional (computador avalia funções e o programa define e compõe funções); 3. Meio orientado a objetos (Visa “imitar” o mundo real, o computador simula as interações entre os objetos); Prof. Nécio Veras
  6. 6. O Paradigma da Orientação a Objetos● O mundo real é constituído por entidades;● Entidade: “Alguma coisa” que tenha sua própria existência, características e que apresenta alguma função do mundo real; – Assim: Entidade = Objeto;● Mas o que seria esse Objeto? Prof. Nécio Veras
  7. 7. O paradigma da Orientação a Objetos● Segundo o dicionário português (s. m.): – Tudo o que se oferece à vista, que afeta os sentidos. – Qualquer coisa. – Fig. Tudo o que se oferece ao espírito, que o ocupa; intenção, propósito. – Causa, motivo de um sentimento, de uma ação. – Matéria própria: o objeto de uma ação. – Direito. Aquilo sobre o que incide um direito, uma obrigação, um contrato, uma demanda em juízo. – Filosofia. O que é pensado e se opõe ao ser pensante, ou sujeito. – Gramática. Complementos verbais: objeto direto e objeto indireto. – O objeto amado, a pessoa a quem se ama. Prof. Nécio Veras
  8. 8. O paradigma da Orientação a Objetos● No mundo computacional, embora não signifique algo concreto ou palpável, é constituído por características que apresentam alguma função do mundo real;● E isso inspira a resolução de problemas baseado na: – construção de um modelo que englobe objetos (entidades) definindo-se as interações entre eles; – Ex.: Problema: “Chegar a um determinado ponto da cidade”; ● Objetos envolvidos: “Eu” , “ônibus” e “campainha”; Prof. Nécio Veras
  9. 9. O Paradigma da Orientação a Objetos: definição preliminar● Um software consiste em um entidade (objeto), expresso na forma de texto, que especifica os objetos que atuam na resolução de um determinado problema e que descreve como esses objetos devem interagir no sentido de resolvê-los. Prof. Nécio Veras
  10. 10. Modelagem Conceitual Refere-se àsOperação mental convenções depara observar um representaçãodomínio e capturarsua estrutura REPRESENTAÇÃO ABSTRAÇÃO Entidade Representada Entidade Notação gráfica, Observada linguagem de programação Avião Prof. Nécio Veras
  11. 11. Abstração● Ex.: Problema: “determinar a média final de um aluno”; – Aspectos relevantes: Suas notas, assiduidade, participação durante as aulas; – Aspectos irrelevantes: Meio de transporte utilizado, procedência escolar, gostos;● Constitui-se em um processo mental usado para modelar uma entidade, isolando as características importantes;● Objetivo: Reduzir a complexidade do problema; Prof. Nécio Veras
  12. 12. Abstração (cont.)● Sempre dependerá do CONTEXTO, ou seja, do PONTO DE VISTA;● Deve enfatizar as características essenciais do problema e o projetista deve: – Considerar essas características sob o ponto de vista de quem necessita da solução; Prof. Nécio Veras
  13. 13. Abstração “a beleza está nos olhos de quem a vꔕ Diferentes abstrações a partir de um mesmo objeto do mundo real Multiplicidade I, II, do conjunto Maça Peso cor da casca Receita formato Prof. Nécio Veras
  14. 14. Conclusão (Abstração)● A forma de representação depende do tipo de problema e dos objetivos;● Um arquiteto deve representar o modelo de resolução do problema de construção de casa, usando maquetes, plantas, etc.● Nosso caso: Definir modelo para que o computador resolva problemas; – Linguagens de programação; – Diagramas/textos descritivos; Prof. Nécio Veras
  15. 15. Operações de Abstração• É importante que se conheça os operações usadas durante o processo de abstração que envolve objetos;• Demonstra como o ser humano mentaliza, organiza e modelo o mundo ao seu redor;• Aplicaremos as seguintes operações básicas: 1. Classificação / Instanciação; 2. Generalização / Especialização; 3. Agregação / Decomposição; 4. Associação; Prof. Nécio Veras
  16. 16. Classificação / Instanciação● Cada entidade possui determinadas características que a identificam;● Ex.: Carro = Automóvel , pois possui todas as características de um automóvel, tais como: – Ter um motor, porta-malas, placa, sistemas de câmbio e freios, volante, etc.● Veículo do vizinho, também é um automóvel, desde que possua as mesmas características; – São entidades distintas, porém pertencem a mesma categoria de automóveis; Prof. Nécio Veras
  17. 17. Classificação● Uma categoria define o conjunto de características que devem ser apresentados por um objeto;● Categoria = Classe;● Objetos (Possuem sua própria existência e características);● Objetos com as mesmas características pertencem a uma mesma classe; Prof. Nécio Veras
  18. 18. Instanciação● Ao construímos um objeto contendo todas as características de determinada classe, estamos fazendo uma operação de Instanciação;● Ocorre sempre que criarmos uma entidade de determinada classe; Prof. Nécio Veras
  19. 19. VisualizandoCATEGORIA (CLASSE) Estudante de Graduação CLASSIFICAÇÃO INSTANCIAÇÃO José Maria INDIVÍDUO (Objeto) Prof. Nécio Veras
  20. 20. Classificação / Instanciação (conclusão)● Classificação: Operação que tem por objetivo, através da análise das características de um objeto, definir a que classe pertence;● Instanciação: Operação que, dada uma determinada classe, define (cria) um objeto pertencente a esta classe; Prof. Nécio Veras
  21. 21. Generalização / Especialização● Imagine um profissional formado em computação (objeto) pertencente à classe bacharel em computação;● Considere agora este profissional faça um curso de especialização em análise de sistemas; – Então, este novo profissional possui características adicionais; – Agora ele também faz parte da classe Analistas de Sistemas;● Assim, análise de sistemas constitui-se em uma especialização da classe bacharel em computação; Prof. Nécio Veras
  22. 22. VisualizandoCATEGORIA (CLASSE) Estudante GENERALIZAÇÃO ESPECIALIZAÇÃO (herança) Estudante Estudante de de Pós- Graduação Graduação CATEGORIA (CLASSE) Prof. Nécio Veras
  23. 23. Visualizando (cont.) CATEGORIA (CLASSE) Mamífero Atributos •sangue quente •vertebrado •vivíparo GENERALIZAÇÃO ESPECIALIZAÇÃO Atributos Baleia (herança)•Habitat: mar•Tempo médio de vida: 200 anos CATEGORIA(CLASSE) Prof. Nécio Veras
  24. 24. Generalização / Especialização (Conclusão)● Generalização: Operação de análise de um conjunto de classes que identificam características comuns a todas, tendo-se por objetivo a definição de uma classe mais genérica, a qual especificará essas características comuns;● Especialização: Operação em que, a partir de uma classe, identifica-se uma ou mais subclasses, cada uma especificando características adicionais em relação à classes mais geral; Prof. Nécio Veras
  25. 25. Agregação / Decomposição● Como vimos, um objeto possui determinadas características: – Características de decomposição; – Características de ação;● Ação está relacionada aos serviços que este objeto pode executar;● Decomposição dizem respeito à constituição do objeto;● Um objeto pode ser composto por vários outros objetos; Prof. Nécio Veras
  26. 26. Agregação / Decomposição (cont.)● Quando unimos um conjuntos de objetos, com o objetivo de formarmos outros objetos, estamos realizando uma operação de agregação;● Ao analisarmos um objeto isolando cada um de seus componentes, estamos fazendo uma operação de decomposição;● Os diagramas que demonstram estas operações, também podem ser chamados de Todo-Parte; Prof. Nécio Veras
  27. 27. VisualizandoCATEGORIA(CLASSE) Estudante AGREGAÇÃO (composição - síntese) DECOMPOSIÇÃO Nome Endereço (refinamento - análise) CATEGORIA COMPONENTE Prof. Nécio Veras
  28. 28. Associação● Apresenta um determinado relacionamento, caracterizado pela ligação entre suas entidades; – Ex.: Professor e aluno no problema relacionado ao ato de ministrar aulas;● Em associação, as entidades que possuem ligação existem independentemente uma da outra; – Ao contrário de Agregação/decomposição, no qual implica o acoplamento forte entre as entidades (uma é parte integrante da outra); Prof. Nécio Veras
  29. 29. Exercícios Prof. Nécio Veras
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×