TÉCNICAS DE PROGRAMAÇÃO II

Slides:



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

Análise e Projeto Orientado a Objetos
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
Desenvolvimento de Sistemas Baseado na Transformação de Modelos
Princípios de Análise e Projeto de Sistemas com UML 2ª edição
Engenharia de Software
UML – MODELAÇÃO DA ESTRUTURA Professor Sandro Carvalho.
Análise e Projeto de Sistemas
Modelagem Orientada a Objetos
O Paradigma de Orientação a Objetos
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.
Linguagem de Programação II
Programação orientada a objetos com Java
Análise e Projeto de Sistemas
Classes e objetos Modelagem
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.
Herança em C#.
Análise Orientada a Objetos
Polimorfismo em C#.
Princípios de Orientação à Objetos
Introdução UML, Diagrama de Classes e Comunicação/Colabaração
PROGRAMAÇÃO ORIENTADA À OBJETOS
. Smalltalk HISTÓRICO . Década de 60 – POO . Dynabook (Alan Kay)
Laboratório de Programação I
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Métodos de Construção de Software: Orientação a Objetos
Oberdan Bitencourt Ferreira
Paradigmas da Programação – Semestre 1 – Aula 2 Professores: Eduardo Mantovani Fábio de Paula.
Herança em Java.
Referências: Booch, G. et al. The Unified Modeling Language User Guide
Introdução à modelagem orientada a objetos
Orientação a Objetos Parte I
PROGRAMAÇÃO ORIENTADA A OBJETO - JAVA
Definição Classe Objeto Construtor de Classes Manipulando o objeto Namespace Utilização do namespace Herança Polimorfismo Encapsulamento Propriedades.
Programação Orientada a Objetos - Java
Prof. Silvestri – todos os direitos reservados SISTEMAS DISTRIBUIDOS Aula 5 Eduardo Silvestri
INTRODUÇÃO À ORIENTAÇÃO A OBJETOS EM JAVA
UML Diagrama de classes.
SISTEMAS DISTRIBUIDOS Aula 4
Projeto Orientado aos Objetos Prof. Wolley W. Silva
Análise Orientado aos Objetos Prof. Wolley W. Silva
Programação Orientada à Objetos
Laboratório de Programação
Análise e Projeto de Sistemas
Paradigmas da Programação – Semestre 2 – Aula 1 Professores: Fábio de Paula Santos Eduardo Mantovani
Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros
Introdução a Programação Orientada a Objetos
Introdução a Orientação a Objetos
Histórico, cenário atual e características.
20/04/2017 Orientação a Objetos 1 1.
Projeto de Banco de Dados
Introdução à Programação Orientada a Objeto
Módulo II Capítulo 1: Orientação a Objetos
4 CONCEITOS BÁSICOS EM POO Dilvan Moreira.  Objetos  Classes  Herança  Polimorfismo Lembrando: 4 Conceitos Básicos.
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA TOCANTINS Campus Araguaína Continuação Modelagem Orientada a Objetos Técnico Subsequente.
Engenharia de Software Orientada a Objetos
Características Cor Combustível Num_Portas Potencia Comportamentos Acelerar Feiar Acender farol Dar seta Buzinar Características Cor Combustível Num_Portas.
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.
Engenharia de Software Orientada a Objetos Professor: Guilherme Timóteo Aula 3: – Modelagem de Classes (parte 2)
Introdução POO Thiago Medeiros Sistemas de Informação Definição: Sistemas de Informação é uma combinação de pessoas, dados, processos, redes de.
Análise e Projeto de Sistemas Análise & modelagem conceitual Prof. Edjandir Corrêa Costa
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Transcrição da apresentação:

TÉCNICAS DE PROGRAMAÇÃO II Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG TÉCNICAS DE PROGRAMAÇÃO II Prof. Marcelo West

Orientação a Objetos Conteúdo: Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Conteúdo: Orientação a Objetos

Utilizada para simulações Conceitos de Classe e SubClasse Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Histórico SIMULA Anos 60   Utilizada para simulações Conceitos de Classe e SubClasse

Desenvolvida pela XEROX Primeira linguagem orientada a objetos de fato Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG SMALLTALK   Anos 70 Desenvolvida pela XEROX Primeira linguagem orientada a objetos de fato Cada elemento do SMALLTALK é tratado como um objeto

Um dos pais do paradigma da orientação a objetos Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Analogia Biológica   Alan Kay, Um dos pais do paradigma da orientação a objetos Analogia biológica

Como seria um sistema de software que funcionasse como um ser vivo? Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Como seria um sistema de software que funcionasse como um ser vivo?   Cada “célula” interagiria com outras células através do envio de mensagens para realizar um objetivo comum

Adicionalmente, cada célula se comportaria como uma unidade autônoma Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Adicionalmente, cada célula se comportaria como uma unidade autônoma   Construir um sistema de software a partir de agentes autónomos que interagem entre si

Princípios da Orientação a Objetos Qualquer coisa é um objeto Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Princípios da Orientação a Objetos   Qualquer coisa é um objeto Objetos realizam tarefas através da troca de mensagens com outros objetos

Cada objeto pertence a uma determinada classe Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Cada objeto pertence a uma determinada classe   Uma classe agrupa objetos similares A classe define as características e comportamento associado ao objeto

Programação Orientação a Objetos Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Programação Orientação a Objetos   Sistema de software como um conjunto de agentes interconectados Agentes = Objetos

Cada objeto é responsável por realizar tarefas específicas Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Cada objeto é responsável por realizar tarefas específicas   É através da interação entre objetos que uma tarefa computacional é realizada

Linguagens Orientadas a Objetos Simula Smalltalk C++ Object Pascal Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Linguagens Orientadas a Objetos   Simula Smalltalk C++ Object Pascal Java .NET

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Um sistema Orientado a Objetos é uma simulação de um cenário real (vida) ou fictício (filme)

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Para construir sistemas Orientados a Objetos é necessário entender os conceitos por trás do paradigma

No mundo real objeto é tudo que podemos tocar Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Objeto   Unidade que utilizamos para representar abstrações em um sistema computacional No mundo real objeto é tudo que podemos tocar No mundo imaginário um objeto é tudo que podemos representar

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Objeto   A interação entre estes objetos formam grupo de objetos mais complexos que agrupado a outros grupos de objetos complexos dão origem ao sistemas reais, como por exemplo o funcionamento de um carro

Características dos Objetos Único Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Características dos Objetos   Único Possui atributos que definem caraterísticas e/ou estado

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Possuem capacidade de realizar ações que chamamos de métodos ou funções

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Normalmente se diz que um objeto é uma instância de uma Classe. O que é uma Classe ?

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Classe    Estrutura (molde) que define os atributos e/ou estados de um conjunto de objetos com características similares.

Descreve os serviços (ações) providos por seus objetos Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Define o comportamento de seus objetos (ações que o objeto pode fazer) através de métodos.   Descreve os serviços (ações) providos por seus objetos Quais informações eles podem armazenar

Atributos de uma Classe Caraterísticas e/ou estado de uma classe Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Atributos de uma Classe   Caraterísticas e/ou estado de uma classe Após a classe ser instanciada em um objeto os atributos vão receber valores (caraterísticas e/ou estados) que definem o objeto

Conjunto de ações que um determinado objeto pode executar Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Métodos de uma Classe    Conjunto de ações que um determinado objeto pode executar   Definem o que um objeto pode fazer

São acionados por outros objetos Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG São acionados por outros objetos   Os objetos se comunicam através de métodos Troca de mensagens

Diferente de outro método pois não possui retorno Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Construtor da Classe   Método especial definido na classe e executado no momento que o objeto é instanciado Diferente de outro método pois não possui retorno Deve ter o mesmo nome da classe.

Pode receber parâmetros Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Pode receber parâmetros   Normalmente utilizados para inicializar os valores dos atributos do objeto

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Para representar classes e objetos em modelos computacionais podemos utilizar uma notação chamada UML

Unified Modeling Language Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG UML   Unified Modeling Language Linguagem para representação de modelos visuais com um significado especifico e padronizado

UML não é uma linguagem de programação Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG UML não é uma linguagem de programação   Os modelos são representados através de diagramas que possuem semântica própria  O diagrama que representa a descrição das classes é o Diagrama de Classes

Estereótipo de uma Classe em UML Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Estereótipo de uma Classe em UML  

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Abstração    Representa as características que devem conter em uma classe para atender a um determinado problema Somente as características necessárias para atender a um determinado problema Representação de um determinado ponto de vista ou abstração do problema

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Para desenvolver aplicações O.O. é necessário identificar os objetos na vida real, extrair a classe que aquele objeto pertence e selecionar os atributos e métodos que serão necessários levando em consideração o modelo computacional que está sendo desenvolvido

Associações Forma como uma classe se relaciona com outra classe Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Associações    Forma como uma classe se relaciona com outra classe Uma classe pode conter atributos que geram instâncias de outra classe  Uma classe pode conter outra classe como atributo  Quando isto ocorre dizemos que uma classe possui outra classe associada a ela

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Encapsulamento   Separar o programa em partes, tornando cada parte mais isolada possível uma da outra A ideia é tornar o software mais flexível, fácil de modificar e de criar novas implementações

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Permite utilizar o objeto de uma classe sem necessariamente conhecer sua implementação   Protege o acesso direto aos atributos de uma instância fora da classe onde estes foram criados

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Uma grande vantagem do encapsulamento é que toda parte encapsulada pode ser modificada sem que os usuários da classe em questão sejam afetados

Classe pai é chamada de superclasse e a filha de subclasse Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Herança   Capacidade que uma classe tem de herdar as características e comportamentos de outra classe Classe pai é chamada de superclasse e a filha de subclasse Em Java só é permitido herdar de uma única classe, ou seja, não permite herança múltipla

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG O objetivo da herança é especializar o entendimento de uma classe criando novas características e comportamentos que vão além da superclasse

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG Generalização Ao mesmo tempo que a especialização amplia o entendimento de uma classe, a generalização vai no sentido inverso e define um modelo menos especializado e mais genérico

Instituto Federal de Educação, Ciência e Tecnologia do Norte de Minas Gerais - IFNMG