. Smalltalk HISTÓRICO . Década de 60 – POO . Dynabook (Alan Kay)

Slides:



Advertisements
Apresentações semelhantes
Orientação a objetos identidade abstração classificação encapsulamento
Advertisements

Análise e Projeto Orientado a Objetos
Desenvolvimento de aplicativos Orientados a Objetos: Definição e Características THIAGO IDEALI.
Princípios da Orientação a Objetos e a Linguagem UML
UML Modelando um sistema.
(Unified Modeling Language)
Engenharia de Software
Orientação por Objectos > Modelo de Processo OO > Identificação de Classe e Objectos Aula 12.
UML – MODELAÇÃO DA ESTRUTURA Professor Sandro Carvalho.
Diagramas de Seqüência
Projeto de Sistemas de Software
Sistemas Distribuídos
Orientação a Objetos: Encapsulamento e Classificação
Modelagem Orientada a Objetos
Orientação a Objetos: Encapsulamento e Classificação
Metodologia de Desenvolvimento de Software
O Paradigma de Orientação a Objetos
Interação Cliente Servidor
INTRODUÇÃO À PROGRAMAÇÃO
Introdução ao paradigma de programação: Orientado a Objetos
Introdução a diagrama de classes e UML
AOO - Análise Orientado a Objetos
Professor: Rogério Lopes Disciplina: Engenharia de Software II Fortium Sistemas da Informação Engenharia de Software II.
Análise e Projetos de Sistemas
ANÁLISE E PROJETO ORIENTADA A OBJETOS UFRJ/IM/DCC Lab PSI mai/1999.
Introdução à Modelagem Conceitual 1. Conceitos Básicos
Programação Orientada a Objetos
Programação orientada a objetos com Java
Análise e Projeto de Sistemas
Classes e objetos Modelagem
Classes e objetos P. O. O. Prof. Grace.
Introdução a Programação Orientada a Objetos
Análise e Projetos de Sistemas UML-Linguagem de Modelagem Unificada Modelo de Dados com UML Diagrama de Classes Professor: Armando Hage.
Orientação a Objetos.
TÉCNICAS DE PROGRAMAÇÃO II
Diagramas de Seqüência
DIAGRAMA DE COMPONENTES
Introdução UML, Diagrama de Classes e Comunicação/Colabaração
Introdução à Ciência da Computação-2 Fabio Nakano – Por favor colocar no assunto: ICC2 - – Bloco A-1, segundo andar,
Projeto de Sistemas de Software
Laboratório de Programação I
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
Análise e Projeto de Sistemas
UML Modelagem e Programação Orientada a Objetos
Paradigmas da Programação – Semestre 1 – Aula 2 Professores: Eduardo Mantovani Fábio de Paula.
Projeto de Banco de Dados
Introdução à modelagem orientada a objetos
Orientação a Objetos Parte I
Marcio de Carvalho Victorino
Programação Orientada à Objetos
Programação Orientada a Objetos - Java
Herança em POO Importante:
SISTEMAS DISTRIBUIDOS Aula 4
Wagner Santos C. de Jesus
Aula prática 14 Orientação a Objetos – C++ Parte 2
Programação Orientada à Objetos
POO Aula 03 Projeto OO com UML Eduardo Figueiredo 11 de Março de 2010.
Revisão 2º Bimestre Engenharia de Software I
Generalização e herança Agregação e composição
Paradigmas da Programação – Semestre 2 – Aula 1 Professores: Fábio de Paula Santos Eduardo Mantovani
Introdução a Programação Orientada a Objetos
Análise e Projeto de Software
Introdução a Orientação a Objetos
Engenharia de Software Orientada a Objetos
20/04/2017 Orientação a Objetos 1 1.
Projeto de Banco de Dados
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Características Cor Combustível Num_Portas Potencia Comportamentos Acelerar Feiar Acender farol Dar seta Buzinar Características Cor Combustível Num_Portas.
UML (Unified Modeling Language) A linguagem unificada de modelagem
Desenvolvendo sotfware com UML1 Visão Geral de Orientação a Objetos.
Transcrição da apresentação:

. Smalltalk HISTÓRICO . Década de 60 – POO . Dynabook (Alan Kay) . Busca de software SEGURO - (Aeronaves, etc...) . Smalltalk .Toda a linguagem escrita em termos de 5 palavras: Objeto, Mensagem, Método, Classe e Instância. 09

CONCEITUAÇÃO: Objeto Encapsulamento Classe Instância Mensagem Método Herança (simples / múltipla) Polimorfismo Formas de abstração 10

Metáfora para: PROCESSOS + DADOS CONCEITUAÇÃO OBJETO Entidade que possui Estado Interno (memória) e Comportamento (repertório de ações) Metáfora para: PROCESSOS + DADOS DADOS FUNÇÃO Forma Peso Marca Preço ? Capacidade de Quicar 11

ENCAPSULAMENTO: PROCESSOS + DADOS CONCEITUAÇÃO ENCAPSULAMENTO: PROCESSOS + DADOS 01. Novo paradigma: Produtores de Objetos FORNECEDORES de código encapsulam funcionalidade para entrega a CONSUMIDORES 02. Resolução de Problemas . Antes: Alguém RESOLVE o problema do USUÁRIO. . OO: Objetos genéricos - CLIENTE resolve seus problemas Há um deslocamento de responsabilidades 03. Duas linguagens .construção dos objetos .utilização dos objetos 04. INTERFACE: pública IMPLEMENTAÇÃO: oculta (ocultação da informação) - separar aspectos externos dos internos 12

Um objeto é instância de UMA e APENAS UMA classe CONCEITUAÇÃO CLASSE OBJETOS de Estrutura e Comportamento idênticos são descritos como INSTÂNCIAS de CLASSES de Objetos Um objeto é instância de UMA e APENAS UMA classe ( SuperClasse; Sub Classe; MetaClasse) BOLA DADOS FUNÇÃO Forma Peso Marca Preço ? Capacidade de Quicar 13

Todo o processamento é ativado por MENSAGENS entre objetos CONCEITUAÇÃO MENSAGEM Todo o processamento é ativado por MENSAGENS entre objetos MENSAGEM: metáfora para COMUNICAÇÃO Toda FUNCIONALIDADE é obtida através de seqüências de MENSAGENS entre OBJETOS No mundo de objetos só existem MENSAGENS e OBJETOS 14

MENSAGENS ativam MÉTODOS CONCEITUAÇÃO MÉTODO MENSAGENS ativam MÉTODOS MÉTODO: implementação de operações (internamente nos objetos) MÉTODO: coleção de instruções de programação que descrevem como levar a cabo determinada tarefa. Horstmam, C. 15

Um objeto é instância (pertence) de uma e apenas uma classe CONCEITUAÇÃO HERANÇA Propriedade de transmissão das características similares a todos membros da classe Um objeto é instância (pertence) de uma e apenas uma classe Pode herdar características de mais de uma classe Herança permite FATORAR atributos Herança Simples / Herança Múltipla avião rodas motor aéreo veículo bicicleta planador caminhão 16

Uso da mesma MENSAGEM para ativar MÉTODOS diferentes CONCEITUAÇÃO POLIMORFISMO Característica que permite que um OBJETO assuma VÁRIAS FORMAS e seja processado de acordo com sua visão corrente Uso da mesma MENSAGEM para ativar MÉTODOS diferentes 17

Maria OFERECEU-A a Pedro CONCEITUAÇÃO POLIMORFISMO Diferença entre duas LPs SINTAXE SEMÂNTICA . Número de Entidades que manipulam . Números de atributos que são associados . Momento que ocorre a associação (binding: amarração) .Estático- antes da execução do programa .Dinâmico- durante a execução do programa Maria OFERECEU-A a Pedro 18

AOO Contexto... Problema.... OOP / OOD / OOA: Mecanismos de Abstração Pessoa Generalização Especialização Eleitor Estudante Livro Classificação Instanciação Agregação Decomposição Capa Maria Top-down Especialização Instanciação Decomposição Bottom-up Generalização Classificação Agregação AOO Classes de Objetos Contexto... Problema.... Generalizar / Especializar Classificar / Instanciar Agregar / Decompor 19

ARTEFATO: qualquer resultado (produto) de uma atividade. . Grady Booch (Método Booch) . James Rumbaugt (OMT) . Ivar Jacobson (OOSE) . Rational Software Corporation - USA IBM (2004) É uma linguagem GRÁFICA destinada a VISUALIZAR, ESPECIFICAR, CONSTRUIR e DOCUMENTAR os ARTEFATOS de um sistema COMPLEXO de software. ARTEFATO: qualquer resultado (produto) de uma atividade. Representação Gráfica de NOTAS 20