Programação Orientada a Objetos Introdução a POO Modelo de Objetos Técnico em Informática. Prof. Marcos André Pisching, M.Sc.

Documentos relacionados
LINGUAGEM DE PROGRAMAÇÃO

MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro

Conceitos/princípios da orientação a objeto

Classes e Objetos. Sintaxe de classe em Java

Modelagem de Sistemas Web. Modelagem de BD

Introdução ao Java. Prof. Herbert Rausch Fernandes

Introdução. Programação Orientada a Objetos (POO) João Paulo Q. dos Santos

Programação Orientada a Objetos

POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos

Prof. A. G. Silva. 07 de agosto de Prof. A. G. Silva INE5603 Introdução à POO 07 de agosto de / 44

Conceitos de Orientação a Objetos. Objeto Atributo Classe Método

Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Orientação a objetos. Objetos ou Instâncias I

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD

Aula 01 Conceito de Banco de Dados e SGBD

AULA 2 VISÃO BÁSICA DE CLASSES EM PHP

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

6 a Lista Complementar de Exercícios de CI208 Programação de Computadores 13/02/2014

Programação Orientada a Objetos Introdução a POO

LÓGICA DE PROGRAMAÇÃO (JAVA) CLASSES E OBJETOS. Professor Carlos Muniz

04/11/2016 UML. Prof. Esp. Fabiano Taguchi DIAGRAMAS DE CLASSE

Introdução à Orientação a Objetos

Programação Orientada a Objetos

ORIENTAÇÃO A OBJETOS Histórico:

Introdução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão

Diagramas de Classes. ESII Profª. Andressa Falcade URI Santiago

Requisitos de sistemas

4) Defina o que vem a ser um algoritmo, e porque, o mesmo depende do processo.

Orientação a Objetos (OO)

Linguagem de Programação I Apresentação da Disciplina

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli

15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo

Análise e projeto de sistemas

Interfaces e Classes Abstratas

27) Em relação aos Projetos de Sistemas de Software, assinale a sequência correta de desenvolvimento de um sistema:

Aula 04 Introdução à Programação Orientada à Objetos

PROGRAMAÇÃO ORIENTADA A OBJETOS II -MÉTODOS PARA MODELAGEM OO. Prof. Angelo Augusto Frozza, M.Sc.

Linguagem de Programação I

Diagramas. Abordaremos agora cada um destes tipos de diagrama: 1. Diagrama Use-Case. 2. Diagrama de Colaboração. 3. Diagrama de Sequência

MODELAGEM DE DADOS MÓDULO III - UNIDADE V- MAPEAMENTO OBJETO RELACIONAL

Padrões de Projeto de Software

Daniel Wildt

Programação para Games II. Professor Ariel da Silva Dias Orientação a Objetos

Conceitos de Programação Orientada a Objetos

Técnicas de Orientação à Objeto. Introdução Modelagem de objeto, classe, atributos e métodos em linguagem Java Desenvolvimento Guiado por Testes

3 Arquitetura MVC baseada em modelos

DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos. Apresentação. Computação e Programação (CP) 2013/2014.

Análise do problema. Desenvolvimento de programas. Desenvolvimento do algoritmo. Análise do problema

Modelagem de Sistemas. Análise de Requisitos. Modelagem

Engenharia de Software Projeto de software

Engenharia de Software. Aula 10 Representação dos Conceitos de Orientação a Objetos. Prof. Me. Rogério Ferreira

Programação para Games II. Professor Ariel da Silva Dias Orientação a Objetos

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

Tema da aula Introdução ao paradigma de programação: Orientado a Objetos

UML Diagrama de Classes

Banco de Dados I Parte I: Introdução

O PARADIGMA ORIENTADO POR OBJETOS

Introdução à Programação Orientada a Objetos. Prof. Leonardo Barreto Campos 1

S15 - Engenharia de Requisitos continuação cap.6

Desenvolvimento de Aplicações Desktop

Conceitos/princípios da orientação a objeto

Programação Orientada a Objeto

A crise do software As duas abordagens actuais para o desenvolvimento de software: abordagem clássica abordagem orientada para objectos

Programação Orientada a Objeto

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Introdução à Programação

Tópicos da Aula. Alguns Diagramas UML. Diagramas Principais. Diagramas de Interação: Sequência e Colaboração. Tipos de Diagramas de Interação

SSC Engenharia de Software. Prof. Paulo C. Masiero

Orientação a Objetos Parte I. Introdução a POO (Programação Orientada a Objetos)

Diagrama de Classes. Régis Patrick Silva Simão. Régis Simão Diagrama de Classes 1/42

2. Introdução à Programação e Análise. Orientada a Objetos

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE

Introdução à Orientação a Objetos em Java

Conceitos de Programação Orientada a Objetos

Fundamentos de Orientação à objetos

Banco de Dados Modelagem Conceitual de Dados. Prof. Edjandir Corrêa Costa

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

Programação Orientada a Objetos. Prof. MsC Sílvio Bacalá Júnior

A modelagem é tida como a parte central de todas as atividades para a construção de um bom sistema, com ela podemos:

UML. Diagrama de Classe

Os princípios do desenho orientado a objetos

Algoritmos e Linguagem de Programação I

Modelagem Orientada a Objetos

DIAGRAMAS DE CLASSE UML

Sistemas Distribuídos Aula 2

Diagrama de Classes 2017

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs

Prof: Ricardo Quintão Site:

Diagrama de Classes. Classes. Relacionamentos. Atributos Métodos. Associação. Generalização Dependência Realização. Agregação Composição

Unidade 3: Classes em Java Para Programadores C Classes, Objetos e Tratamento de Erros Prof. Daniel Caetano

PROGRAMAÇÃO ORIENTADA A OBJETOS: Conceitos Iniciais

Informática I. Aula 14. Aula 14-10/10/2007 1

Programação Orientada a Objetos

Programação Java (nível intermediário) 4. Polimorfismo

Análise de Sistemas 4º Bimestre (material 3)

Marcelo Henrique dos Santos

Transcrição:

Introdução a POO Modelo de Objetos Técnico em Informática, M.Sc.

O Modelo de Objetos Objetos Resolução de um problema: passa pela análise de uma determinada situação real o objetivo é a construção de um modelo que represente esta situação real. O modelo deverá considerar os objetos (entidades) que integram o problema. Objeto é considerado qualquer coisa que tenha significado dentro do contexto do problema, seja ele concreto ou abstrato. 2

O Modelo de Objetos Objetos Exemplos: Um livro Uma página do livro Uma viagem Uma determinada data O endereço de alguém Uma pessoa Uma música 3

O Modelo de Objetos Objetos Cada objeto consiste em uma entidade com identidade própria. Mesmo que, a partir de uma observação simples, se diga que dois objetos são iguais, tem-se dois objetos distintos. Se você observar dois volumes de um mesmo livro os dois são objetos distintos, porém, apresentam características semelhantes. 4

O Modelo de Objetos Objetos - Na programação Um objeto é a abstração de uma entidade do mundo real. Cada objeto apresenta sua própria existência, identificação, características de composição e tem alguma utilidade pode executar determinados serviços quando solicitados. 5

O Modelo de Objetos Objetos - Na programação Um objeto constitui-se em um elemento do programa. Após sua criação (através da execução de um comando apropriado) ele passa a ocupar espaço na memória. Todo objeto deve ter uma identificação nome que o objeto apresenta, o qual será definido pelo projetista do modelo. 6

O Modelo de Objetos Objetos - Na programação Atributos: são as características de composição que constituem e definem a estrutura de um objeto. Ex.: objeto lapiseira pode ser definido pelo nome umalapiseira e possui como atributos: - cor predominante (valor simples); - peso (valor simples); - sistema de avanço do grafite (outro objeto); - comprimento do grafite (valor simples). Obs.: os valores dos atributos podem ser modificados durante a vida útil do objeto. 7

O Modelo de Objetos Objetos - Na programação Comportamento ou métodos: são características de utilidade são às ações ou serviços que o objeto pode executar. O Objeto umalapiseira - comportamentos: escrever; avançar grafite; recolher grafite; 8

O Modelo de Objetos Objetos Representação de um objeto Objeto tal 9

O Modelo de Objetos Objetos objeto empregado Objeto Empregado 10

O Modelo de Objetos Objetos Exemplo: objeto resultante da abstração da porta de uma sala UmaPorta Atributos (composição): - cor (azul) - altura (2.1) - largura (0.8) - fechadura (outro objeto) Serviços (comportamento): - abrir-se - fechar-se 11

O Modelo de Objetos Objetos Exemplo: objeto resultante da abstração de um aluno de uma disciplina UmAluno Atributos: - nome (José) Serviços: - matrícula (2399382-9) - nota parcial (8.0) - nota final (9.0) - estudar - assistir aula - realizar prova 12

O Modelo de Objetos Objetos Exemplo: uma cidade UmaCidade Atributos: - nome (Lages) - habitantes (185000) - área (500) - prefeito (Francisco Azevedo) - prefeitura (outro objeto) Serviços: - plano diretor (outro objeto) - mudar prefeito - alterar plano diretor - alterar o número de habitantes 13

O Modelo de Objetos Objetos Representação de um objeto em um modelo. UmaCidade Prefeitura Plano Diretor 14

Define as características de um grupo de objetos define como serão as instâncias pertencentes a ela. Especifica quais serão os atributos de todos os objetos que pertencerem a classe. Determina quais serviços (operações) qualquer objeto poderá executar. 15

Dois ou mais objetos podem pertencer a uma mesma classe. Desta forma, os objetos terão os mesmos atributos. Obs.: Dizer que objetos possuem os mesmos atributos, trata-se da existência deles, porém, vale ressaltar, que o conteúdo ou valor de cada atributo pode ser diferente. Ex.: A cor do Corsa da Ana é Verde. A cor do Astra do Rivaldo é Prata. 16

A abstração tem objetivo de definir um modelo de resolução de um problema procura-se identificar quais objetos integram o problema e como os mesmos interagem. Ao identificar os objetos, define-se: Quais são os atributos, e Quais são os serviços. Tendo as características do objeto, é possível determinar à qual classe ele pertence. 17

Como todo objeto é uma instância de uma classe, então, pode se dizer que a classe é o tipo do Objeto. A classe consiste em uma entidade, descrevendo: Quais atributos terão os objetos pertencentes a mesma. Quais serviços os objetos poderão executar. 18

Processo de Modelagem de um Problema Análise/projeto Implementação Análise e Projeto (1/2) Consiste em proceder uma análise da situação real, tendo por objetivo abstrair o que deve ser relevante para o problema. O problema deve ser analisado como um todo. Define-se todos os objetos envolvidos. 19

Análise e Projeto (2/2) Com a identificação dos objetos, é possível identificar as classes envolvidas e os relacionamentos entre elas. Para uma classe, nesta fase, serão definidos quais atributos terão seus objetos e quais serviços estes poderão executar. Implementação Consiste em expressar a classe em uma linguagem de programação. 20

Implementação Um objeto presta um serviço, executando o respectivo método especificado em sua classe. A todo serviço corresponderá um método. Serviço: ação do objeto. Método: a forma como a ação será executada. Objeto presta Serviço Executando Método correspondente especificado em sua classe 21

Implementação Esta fase é dependente da fase de análise/projeto. É de fundamental importância que a fase de análise/projeto procure definir de maneira mais adequada possível as classes que compõem o problema. Uma definição incorreta na fase de análise/projeto implica em erros na implementação. 22

Conclusão - uma classe instanciada apresenta: Seus atributos (estrutura do objeto). Representação dos atributos (valores simples, objetos). Métodos que o objeto poderá executar (serviços que o objeto pode prestar). Para cada um dos métodos, qual a seqüência de ordens que computador deve executar. 23

Representação de Classes Relógio formato:string cor:string peso:real apulseira:pulseira osponteiros:ponteiro apilha:pilha iniciarmarcacaohoras informarhoras corrigirhoras trocarpilhas Nome da Classe Especificação dos Atributos Obs.: Atributos que são objetos (apulseira, osponteiros e apilha), e suas respectivas classes Especificação dos Métodos 24

Aspectos de Linguagem Uma classe deve ser expressa como um texto escrito em determinada linguagem. Deve ser especificado: Atributos; Métodos; e Seqüência de ações que o computador deve executar para a realização de cada um dos métodos. 25

O Objeto Programa Consiste em uma entidade que tem a função de resolver o problema. Um programa pode ser tratado como um objeto, cuja tarefa fundamental será a resolução do problema como um todo. Um programa pode ser modelado como um objeto, cujos atributos são outros objetos, os quais comunicam-se entre si, com o objetivo de resolver o problema. 26

O Objeto Programa Representação Modelagem de um objeto programa UmPrograma UmaInterface UmAluno Fax Escritório Fax, transmita Chefe, chefie Secretária, passe fax Secretária Chefe Chefe, estou saindo Modelo de um objeto Escritório 27

O Objeto Programa Abstração aspectos importantes Um objeto pode ser constituído por outros objetos. Todo objeto constitui-se em uma instância de determinada classe. Um objeto é o resultado do que está definido na classe. Uma classe pode ser especializada em subclasse. 28

Mensagem É a maneira pela qual os objetos se comunicam. Um objeto só executará determinado serviço se receber uma solicitação que pode ser encaminhada por outro objeto. Para um objeto comunicar-se com outro é necessário o encaminhamento de uma mensagem (uma solicitação de serviço). 29

Mensagem O envio de uma mensagem envolve três elementos: O objeto emissor que envia a mensagem Objeto Usuário; O objeto receptor que recebe a mensagem Objeto Executor; A definição do serviço a ser executado Seletor. 30

Mensagem Envio de uma mensagem: Deve ser especificado o nome do objeto executor e qual método a ser executado. Devem também ser especificados os recursos (parâmetros) necessários para a execução do método. Dependendo, também será necessário especificar o que o objeto executor deve retornar. 31

Mensagem Classes Serviço solicitado Objeto receptor (executor) Chefe Fazer Ligação Secretária Objeto emissor (usuário) O chefe solicita que a secretária faça uma ligação telefônica, após a execução do serviço, esta deve informar ao chefe que a ligação está disponível. 32

Mensagem 33

Mensagem exemplos Objeto umprofessor solicita que o ojbeto umaluno, estude para a prova: umaluno.estude; Um programa encaminha uma mensagem ao objeto umapessoa, solicitando que este modifique o valor de sua idade umapessoa.recebavaloridade(25); 34

Mensagem exemplos Objetos umhotel e umcliente o objeto umhotel determina a conta de um cliente: umhotel.determineconta(umcliente, valor); 35

Mensagem o processo de envio O objeto que encaminha a mensagem objeto emissor ou usuário; O objeto que recebe a mensagem objeto receptor ou executor; A especificação da mensagem nome do método (seletor), juntamente com a especificação de argumentos quando necessário. 36

Domínios Um programa pode ser modelado como um objeto composto por outros objetos. Os objetos que compõe um programa podem ser divididos em dois grupos: Aqueles que pertencem ao domínio do problema. Aqueles que pertencem ao domínio exclusivo da implementação em computador. 37

Domínios Do problema Integra o problema, independentemente se o problema será solucionado em computador ou não. Ex.: objeto umaluno é definido na análise, representando a abstração do aluno. O objeto existirá mesmo que o modelo em construção não seja para resolução em computador Prof. Programação Marcos André Pisching Orientada a Objetos 38

Domínios Exclusivo da implementação em computador Existem só em função da construção do programa de computador. Ex.: durante a execução de um programa, a tarefa de comunicação com o usuário ficará a cargo de um determinado objeto, o qual é identificado normalmente como interface. A interface é um objeto que compõe o programa. Este objeto só existe em função da existência do programa. Portanto, isto é considerado como parte integrante do domínio exclusivo da implementação. 39

Domínios Determinar quais objetos irão integrar o domínio do problema, requer do projetista profundo conhecimento do mesmo. Para um profissional da informática, dado a diversidade de problemas, esta tarefa não é muito simples. A resolução de um problema, exige que o mesmo seja devidamente conhecido, para que então possa ser resolvido. 40