Professional Documents
Culture Documents
ES - Aula 4 - OO - Introduo
ES - Aula 4 - OO - Introduo
Engenharia de software 2
Paradigma? Paradigma?
1
6/15/2020
• O paradigma da OO surgiu no fim dos anos 60. • Através de sua analogia biológica, Alan Kay definiu os fundamentos da orientação
a objetos
• Alan Kay, um dos pais desse paradigma, formulou a chamadaanalogia
biológica. • Qualquer coisa é um objeto
• Princípios
Um sistema de software orientado a objetos consiste de
• Encapsulamento
objetos em colaboração com o objetivo de realizar as
funcionalidades deste sistema. • Polimorfismo
Cada objeto é responsável por tarefas específicas. É • Generalização (Herança)
através da cooperação entre objetos que a computação
• Composição
do sistema se desenvolve.
2
6/15/2020
• Criação de objetos.
3
6/15/2020
Abstração Abstração
4
6/15/2020
• Uma abstração é uma representação das características e do • Objetos são abstrações de entidades que existem no mundo real.
comportamento relevantes de um conceito do mundo real para um • Classes são definições estáticas, que possibilitam o entendimento de um grupo
determinado problema. de objetos.
• Dependendo do contexto, um mesmo conceito do mundo real pode ser • CUIDADO: estes dois termos muitas vezes são usados indistintamente em
textos sobre orientação a objetos.
representado por diferentes abstrações.
• Carro (para uma transportadora de cargas)
Mensagens Mensagens
• Para que um objeto realize alguma tarefa, deve haver um estímulo • Independentemente da origem do estímulo, quando ele ocorre, diz-se que o
objeto em questão está recebendo umamensagem.
enviado a este objeto.
• Uma mensagem é uma requisição enviada de um objeto a outro para que este
• Este objeto é uma entidade ativa que representa uma abstração de algo
último realize alguma operação
do mundo real
• Tal objeto pode responder a estímulos a ele enviados
• Assim como faz sentido dizer que seres vivos reagem a estímulos que eles
recebem.
5
6/15/2020
Mensagens Encapsulamento
Encapsulamento Encapsulamento
• De acordo com o encapsulamento, objetos devem “esconder” a sua • O encapsulamento é uma forma de restringir o acesso ao comportamento
complexidade. interno de um objeto
• Esse princípio aumenta qualidade do SSOO, em termos de: • Um objeto que precise da colaboração de outro para realizar alguma tarefa
• Legibilidade simplesmente envia uma mensagem a este último.
• Clareza • O método (maneira de fazer) que o objeto requisitado usa para realizar a
6
6/15/2020
• É a habilidade de objetos de classes diferentes responderem a mesma • A herança pode ser vista como um nível de abstração acima da encontrada
mensagem de diferentes maneiras. entre classes e objetos
• Diretamente associado com herança. • Na herança, classes semelhantes são agrupadas em hierarquias
• Trabalha com a redeclaração de métodos previamente herdados por uma classe, • Cada nível de uma hierarquia pode ser visto como um nível de abstração.
onde estes métodos são implementados de forma diferente par cada classe de
• Cada classe em um nível da hierarquia herda as características das classes
acordo com a sua necessidade.
nos níveis acima.
• Classes derivadas de uma mesma superclasse podem invocar métodos que têm
a mesma identificação mas comportamentos distintos, usando para tanto uma
referência a um objeto do tipo da superclasse.
• Aspectos
A h e r a n ç a f a c i l i t a o • Projeto
compartilhamento de • Modelagem
semelhantes • Gestão
7
6/15/2020
Atores • Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 1 Princípios de Análise e Projeto de
• Representa uma classe externa ao sistema. Sistemas com UML 2ª edição Eduardo Bezerra Editora." — Transcrição da apresentação:
Engenharia de software 30