UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis 2015.2.

Slides:



Advertisements
Apresentações semelhantes
Desenvolvimento de aplicativos Orientados a Objetos: Definição e Características THIAGO IDEALI.
Advertisements

Java e OO – Isso é só um roteiro de aula
PHPOO Erick Souza. Conceitos de Orientação a Objetos Objeto é um conceito ou item(concreto ou abstrato). Software orientado a objetos Uma classe é uma.
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INTERFACES Prof. Thiago Pereira Rique
UML – MODELAÇÃO DA ESTRUTURA Professor Sandro Carvalho.
Projeto de Sistemas de Software Leandra Mara da Silva
Prof. João Bosco M. Sobral
RV: Objetos e Implementação Prof. Dr. Annibal Hetem Jr.
Introdução ao paradigma de programação: Orientado a Objetos
Introdução a diagrama de classes e UML
Alexandre Parra Site: Os Pilares da OO em Java Alexandre Parra Site:
Professor: Rogério Lopes Disciplina: Engenharia de Software II Fortium Sistemas da Informação Engenharia de Software II.
Linguagem de Programação II
Linguagem de Programação II
Linguagem PHP Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Interfaces em Java1 Interfaces Prof. Ricardo Linden.
Programação Orientada a Objetos
Programação orientada a objetos com Java
Herança e Polimorfismo
Classes e objetos P. O. O. Prof. Grace.
TÉCNICAS DE PROGRAMAÇÃO II
DIAGRAMA DE COMPONENTES
Curso de extensão em Desenvolvimento Web
Herança em C#.
Introdução a programação (if669cc)
Princípios de Orientação à Objetos
Análise da linguagem Java Planejamento. Objetivos Apresentar as soluções de implementação em Java para os conceitos de Orientação a Objetos introduzidos.
Conceitos básicos de orientação a objetos
DIAGRAMA DE CLASSE Modelagem de Software
Ferramentas para Orientação a Objetos Apresentação da Disciplina Prof. Wolley.
Oberdan B. Ferreira Polimorfismo Oberdan B. Ferreira
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
Aula 3 CoL, atividade Polimorfismo (late binding) Modificador final Modificador abstract Interfaces Herança múltipla Atribuição, Construtores, Destrutores,
Métodos de Construção de Software: Orientação a Objetos
Herança em Java.
Orientação a Objetos Parte I
Programação Orientada à Objetos
SISTEMAS DISTRIBUIDOS Aula 4
© Ricardo Pereira e Silva
Aula prática 14 Orientação a Objetos – C++ Parte 2
PROGRAMAÇÃO ORIENTADA A OBJETOS
Paradigmas da Programação – Semestre 2 – Aula 13 Professor: Eduardo Mantovani Prof. Fábio de Paula Santos
Programação Orientada à Objetos
Interfaces POO Avançado.
Prof.: Bruno Rafael de Oliveira Rodrigues.  Existe para poder servir de molde para outras classes.  Deve ser declarada tal usando-se a palavra chave.
Introdução Padrões de Projeto
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos Professor: Cheli Mendes Costa Introdução a Programação Orientada.
Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros
Orientação a Objetos com UML
Orientação a Objetos Programação Estruturada e Orientada a Objetos
Conceitos de Orientação a Objetos zConceito de tipo zTipos Abstratos de Dados zMódulos/Pacotes zEncapsulamento.
Design Patterns A adoção dos padrões terá um efeito profundo e duradouro sobre a forma de escrevermos programas Ward Cunningham e Ralph Johnson.
Padrões de projeto M.Sc. Sílvio Bacalá Jr..
Introdução a Orientação a Objetos
Orientação a Objetos com UML. Copyright © 2006 Qualiti. Todos os direitos reservados. Qualiti Software Processes Análise e Projeto OO com UML e Padrões|
20/04/2017 Orientação a Objetos 1 1.
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
Prof.: Bruno Rafael de Oliveira Rodrigues. Herança Possibilita a uma classe usar campos ou métodos definidos em outra classe. Assim a classe pai possui.
Implementação Orientada a Objetos – Aula 08 Herança, sobrescrita de métodos e polimorfismo Prof. Danielle Martin Universidade de Mogi das Cruzes
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
Desenvolvendo sotfware com UML1 Visão Geral de Orientação a Objetos.
Delegação  É uma maneira de tornar a composição tão poderosa para fins de reutilização como a herança. Na delegação, dois objetos são envolvidos no tratamento.
1. 2 Programação Orientada a Objetos Prof. Maurício Rodrigues de Morais
Análise e Projeto de Sistemas Análise & modelagem conceitual Prof. Edjandir Corrêa Costa
Transcrição da apresentação:

UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis

Delegação ou composição Objetivo – Delegar ações a quem as sabe fazer. Várias classes podem ser agrupadas em uma só, sendo esta nova classe invocada na classe Principal. Classes precisam ser relacionadas entre si. Exemplos?

Delegação ou composição

Agregação Conjunto de classes não relacionadas em uma nova classe. Classes de pacotes diferentes podem ser agregadas em uma única classe por necessidade da lógica do negócio. Classe agregadora é instanciada na classe Principal. Exemplo?

Agregação

Polimorfismo Um mesmo objeto pode assumir diferentes formas, bastando que as formas “sejam um” ou “um tipo do” objeto pai. Facilita o desacoplamento quanto maior for a abstração. Exemplo?

Polimorfismo

É UM

Classes Abstratas Modelo comportamental a ser seguido por objetos que “sejam uma” implementação do modelo com alguma(s) característica(s) particulares (valor dos atributos e/ou implementação de ações/comportamentos diferentes). Não pode ser instanciada. Possui métodos abstratos e não abstratos. Pode herdar de apenas uma classe, porém implementar diversas interfaces (assinar diversos contratos estruturais).

Interfaces Modelo estrutural a ser seguido para garantir que todos os objetos sejam o que dizem ser, ou seja, um contrato a ser assinado por todas as classes que se comprometem em ter a mesma característica/funcionalidade. Não pode ser instanciada. Nível máximo de abstração. Nível máximo de desacoplamento. Garante a mesma visão do sistema por todas as equipes de desenvolvedores (espalhadas geograficamente). Fundamental para garantir boas práticas de programação. Fundamental para utilização de Design Patterns (Padrões de Projeto). Abordagem de métodos diferente das classes abstratas: enquanto na interface se definem métodos estruturais, nas classes abstratas se definem métodos comportamentais (ações). Serve como estrutura para classes Abstratas. Classes podem implementar diversas interfaces. Interfaces podem herdar de diversas interfaces.

Interfaces Por que utilizar interfaces ao invés de apenas Classes Abstratas? O pai do Java responde!

Interfaces É preciso conhecer o comportamento da classe Pai para saber como a filha irá se comportar (quebra o encapsulamento); Mudanças na classe Pai irão interferir no comportamento das classes filhas, podendo “quebrá-las”; Uso de interfaces é uma melhor forma de herança múltipla (que não é contemplada em Java).

Exemplos - Interfaces No Core do Java: Readable – utilizada por classes que tenham capacidade de ler alguma informação de entrada. É implementada por objetos de um mesmo tipo (buffer de leitura) que possuem a estrutura necessária para ler uma informação. Comparable – utilizada por objetos que tenham a capacidade de serem comparados entre si. É implementada por diversos objetos distintos que podem ser comparados.

Interface Readable

Interface Comparable

Classes cumprem contrato, seguem a estrutura ditada pela interface.

Segue estrutura e dita comportamen to Dita estrutur a