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 da tecnologia de objetos;
Modelagem conceitual (abstração);
Processos de abstração;
Operações de abstração.
3.
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);
4.
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);
5.
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?
6.
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
7.
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
8.
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.
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: “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;
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 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;
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
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
16.
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;
17.
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;
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
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
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
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;
25.
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
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,
Parece que tem um bloqueador de anúncios ativo. Ao listar o SlideShare no seu bloqueador de anúncios, está a apoiar a nossa comunidade de criadores de conteúdo.
Odeia anúncios?
Atualizámos a nossa política de privacidade.
Atualizámos a nossa política de privacidade de modo a estarmos em conformidade com os regulamentos de privacidade em constante mutação a nível mundial e para lhe fornecer uma visão sobre as formas limitadas de utilização dos seus dados.
Pode ler os detalhes abaixo. Ao aceitar, está a concordar com a política de privacidade atualizada.