Análise de Sistemas
      Unidade II – O paradigma da Orientação a Objetos
Objetivo: Visualizar o paradigma da Orientação a Objetos
                                                      Prof. Nécio de Lima Veras
Roteiro


Introdução
O Paradigma da tecnologia de objetos;
Modelagem conceitual (abstração);
Processos de abstração;
Operações de abstração.
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);
Introdução (cont.)

Como construir um modelo de
resolução (ou modelagem do
problema)?
Existem para isso vários paradigmas:
Meio Procedural (computador é uma máquina
que apenas obedece ordens);
Meio funcional (computador avalia funções e
o programa define e compõe funções);
Meio orientado a objetos (Visa “imitar” o
mundo real, o computador simula as
interações entre os objetos);
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?
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
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
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.
Modelagem Conceitual
                                           Refere-se às
Operação mental                            convenções de
para observar um                           representação
domínio e capturar
sua estrutura                   REPRESENTAÇÃO
              ABSTRAÇÃO


                                    Entidade Representada

         Entidade              Notação gráfica,
        Observada                                    Avião
                          linguagem de programação
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;
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;
Abstração
           “a beleza está nos olhos de quem a vê”

ferentes abstrações a partir de um mesmo objeto do mundo re




                                                     Cardinalidade
                                            I, II,   do conjunto

              Maça
             Peso
             cor da casca     Receita

             formato
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;
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:
Classificação / Instanciação;
Generalização / Especialização;
Agregação / Decomposição;
Associação;
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
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;
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;
Visualizando
CATEGORIA (CLASSE)
             Estudante
                de
             Graduação

                         CLASSIFICAÇÃO

                                  INSTANCIAÇÃO

          José       Maria

            INDIVÍDUO
              (Objeto)
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;
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
Visualizando
CATEGORIA (CLASSE)

             Estudante



                         GENERALIZAÇÃO

                                  ESPECIALIZAÇÃO
                                      (herança)
     Estudante       Estudante
        de            de Pós-
     Graduação       Graduação

      CATEGORIA (CLASSE)
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)
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;
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;
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
Visualizando
CATEGORIA(CLASSE)


             Estudante

                          AGREGAÇÃO
                           (composição -
                              síntese)
                                    DECOMPOSIÇÃO
      Nome          Endereço          (refinamento -
                                          análise)
   CATEGORIA   COMPONENTE
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,

O paradigma da orientação a objetos

  • 1.
    Análise de Sistemas Unidade II – O paradigma da Orientação a Objetos Objetivo: Visualizar o paradigma da Orientação a Objetos Prof. Nécio de Lima Veras
  • 2.
    Roteiro Introdução O Paradigma datecnologia de objetos; Modelagem conceitual (abstração); Processos de abstração; Operações de abstração.
  • 3.
    Introdução Uma construção deum programa implicará em definir um modelo de resolução e isso envolve um estudo do problema (contexto e aspectos importantes);
  • 4.
    Introdução (cont.) Como construirum modelo de resolução (ou modelagem do problema)? Existem para isso vários paradigmas: Meio Procedural (computador é uma máquina que apenas obedece ordens); Meio funcional (computador avalia funções e o programa define e compõe funções); Meio orientado a objetos (Visa “imitar” o mundo real, o computador simula as interações entre os objetos);
  • 5.
    O Paradigma daOrientaçã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?
  • 6.
    O paradigma daOrientaçã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
  • 7.
    O paradigma daOrientaçã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
  • 8.
    O Paradigma daOrientaçã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.
  • 9.
    Modelagem Conceitual Refere-se às Operação mental convenções de para observar um representação domínio e capturar sua estrutura REPRESENTAÇÃO ABSTRAÇÃO Entidade Representada Entidade Notação gráfica, Observada Avião linguagem de programação
  • 10.
    Abstração Ex.: Problema: “determinara 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;
  • 11.
    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;
  • 12.
    Abstração “a beleza está nos olhos de quem a vê” ferentes abstrações a partir de um mesmo objeto do mundo re Cardinalidade I, II, do conjunto Maça Peso cor da casca Receita formato
  • 13.
    Conclusão (Abstração) A formade 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;
  • 14.
    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: Classificação / Instanciação; Generalização / Especialização; Agregação / Decomposição; Associação;
  • 15.
    Classificação / Instanciação Cadaentidade 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
  • 16.
    Classificação Uma categoria defineo 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;
  • 17.
    Instanciação Ao construímos umobjeto 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;
  • 18.
    Visualizando CATEGORIA (CLASSE) Estudante de Graduação CLASSIFICAÇÃO INSTANCIAÇÃO José Maria INDIVÍDUO (Objeto)
  • 19.
    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;
  • 20.
    Generalização / Especialização Imagineum 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
  • 21.
    Visualizando CATEGORIA (CLASSE) Estudante GENERALIZAÇÃO ESPECIALIZAÇÃO (herança) Estudante Estudante de de Pós- Graduação Graduação CATEGORIA (CLASSE)
  • 22.
    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)
  • 23.
    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;
  • 24.
    Agregação / Decomposição Comovimos, 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;
  • 25.
    Agregação / Decomposição (cont.) Quandounimos 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
  • 26.
    Visualizando CATEGORIA(CLASSE) Estudante AGREGAÇÃO (composição - síntese) DECOMPOSIÇÃO Nome Endereço (refinamento - análise) CATEGORIA COMPONENTE
  • 27.
    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,