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

O paradigma da orientação a objetos

Embed Size (px)

Citation preview

Page 1: O paradigma da orientação a objetos

Análise de SistemasUnidade II – O paradigma da Orientação a Objetos

Prof. Nécio de Lima Veras

Objetivo: Visualizar o paradigma da Orientação a Objetos

Page 2: O paradigma da orientação a objetos

Roteiro

IntroduçãoO Paradigma da tecnologia de objetos;Modelagem conceitual (abstração);Processos de abstração;Operações de abstração.

Page 3: O paradigma da orientação a objetos

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);

Page 4: O paradigma da orientação a objetos

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);

Page 5: O paradigma da orientação a 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?

Page 6: O paradigma da orientação a objetos

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

Page 7: O paradigma da orientação a objetos

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

Page 8: O paradigma da orientação a objetos

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.

Page 9: O paradigma da orientação a objetos

EntidadeObservada

Entidade Representada

Avião

ABSTRAÇÃO

REPRESENTAÇÃO

Operação mentalpara observar umdomínio e capturarsua estrutura

Refere-se àsconvenções derepresentação

Notação gráfica,linguagem de programação

Modelagem Conceitual

Page 10: O paradigma da orientação a objetos

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;

Page 11: O paradigma da orientação a objetos

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;

Page 12: O paradigma da orientação a objetos

Abstração“a beleza está nos olhos de quem a vê”

Diferentes abstrações a partir de um mesmo objeto do mundo real

Maça

Pesocor da cascaformato

Receita

I, II,Cardinalidadedo conjunto

Page 13: O paradigma da orientação a objetos

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;

Page 14: O paradigma da orientação a objetos

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;

Page 15: O paradigma da orientação a objetos

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

Page 16: O paradigma da orientação a objetos

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;

Page 17: O paradigma da orientação a objetos

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;

Page 18: O paradigma da orientação a objetos

Visualizando

Estudantede

Graduação

José Maria

CLASSIFICAÇÃO

CATEGORIA (CLASSE)

INDIVÍDUO(Objeto)

INSTANCIAÇÃO

Page 19: O paradigma da orientação a objetos

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;

Page 20: O paradigma da orientação a objetos

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

Page 21: O paradigma da orientação a objetos

Visualizando

Estudante

GENERALIZAÇÃO

CATEGORIA (CLASSE)

CATEGORIA (CLASSE)

Estudantede Pós-

Graduação

Estudantede

Graduação

ESPECIALIZAÇÃO(herança)

Page 22: O paradigma da orientação a objetos

Visualizando (cont.)

Mamífero

GENERALIZAÇÃO

CATEGORIA (CLASSE)

CATEGORIA(CLASSE)

Baleia

Atributossangue quentevertebradovivíparo

AtributosHabitat: marTempo médio devida: 200 anos

ESPECIALIZAÇÃO(herança)

Page 23: O paradigma da orientação a objetos

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;

Page 24: O paradigma da orientação a objetos

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;

Page 25: O paradigma da orientação a 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

Page 26: O paradigma da orientação a objetos

Visualizando

Estudante

AGREGAÇÃO(composição -

síntese)

DECOMPOSIÇÃO(refinamento -

análise)

CATEGORIA(CLASSE)

CATEGORIA

EndereçoNome

COMPONENTE

Page 27: O paradigma da orientação a objetos

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,