SlideShare uma empresa Scribd logo
1 de 54
Baixar para ler offline
Prof. Marcello Thiry <marcello.thiry@gmail.com>
PROGRAMAÇÃO ORIENTADA
A OBJETOS
Unidade 2 (parte 3)
3º período
marcello.thiry@gmail.com
2
marcello.thiry@gmail.com
3
Visão estática
Visão dinâmica
marcello.thiry@gmail.com
4
Visão estática
Visão dinâmica
marcello.thiry@gmail.com
Diagrama de Sequência
 Diagrama Comportamental
 Diagrama de Interação
 Mostra a interação de objetos organizada no tempo
 Permite visualizar a troca de mensagens entre os objetos
 Mostra a implementação de uma ou mais “operações”
 Mostra os “métodos” destas operações
5
marcello.thiry@gmail.com
6
Operações e mensagens
 Uma mensagem é uma solicitação feita por um objeto
cliente a um objeto fornecedor
 Como resultado desta solicitação, o objeto fornecedor irá
modificar seu estado ou irá retornar algum valor
 Para invocar uma operação de um objeto, deve-se enviar
uma mensagem para este objeto
6
marcello.thiry@gmail.com
7
Representação de uma mensagem...
marcello.thiry@gmail.com
8
Representação de uma mensagem...
Objetos
que estão
interagindo
marcello.thiry@gmail.com
9
Representação de uma mensagem...
Mensagem do objeto “cliente”
para o objeto “fornecedor”
marcello.thiry@gmail.com
10
Representação de uma mensagem...
Mensagem do objeto “cliente”
para o objeto “fornecedor” Sentido da mensagem
marcello.thiry@gmail.com
11
Representação de uma mensagem...
fornecedor.getSalarioBruto()
getSalarioBruto() é uma operação da classe “Funcionario”
marcello.thiry@gmail.com
12
Representação de uma mensagem...
cliente está invocando o método da operação
getSalarioBruto() que será executado pelo
objeto fornecedor
marcello.thiry@gmail.com
Variável em cliente
que recebe o
resultado da execução
marcello.thiry@gmail.com
Notação para representar o
retorno do controle da execução
(retorno da chamada)
marcello.thiry@gmail.com
controle da
execução
Como funciona...
marcello.thiry@gmail.com
envio da
mensagem
controle da
execução
marcello.thiry@gmail.com
Executa
Acabou:
retornar o
controle
marcello.thiry@gmail.com
Retorno do controle da execução
marcello.thiry@gmail.com
O controle da execução retornou
para o objeto que mandou a mensagem
marcello.thiry@gmail.com
Chamada de procedimento
(mensagem síncrona)
marcello.thiry@gmail.com
Mensagens síncronas
 Representa um fluxo de controle aninhado
 Chamada a uma operação
 Mensagem bloqueante
 O objeto “cliente” fica esperando (bloqueado) pela execução da
operação no objeto “fornecedor”
 O objeto “cliente” só poderá fazer uma nova ação quando
receber o controle de volta
21
marcello.thiry@gmail.com
Mensagens síncronas
 Por ser uma mensagem bloqueante, utilizamos uma
notação para indicar o retorno do controle ao objeto
que originou a mensagem
22
marcello.thiry@gmail.com
23
Um exemplo...
marcello.thiry@gmail.com
24
Um exemplo...
objetos
marcello.thiry@gmail.com
25
Um exemplo...
tempo
marcello.thiry@gmail.com
26
Um exemplo...
Não interessa
modelar quem
chamou ou
para quem vai
marcello.thiry@gmail.com
27
Um exemplo...
marcello.thiry@gmail.com
28
Um exemplo...
marcello.thiry@gmail.com
29
Um exemplo...
Este diagrama mostra a
implementação da
operação (método)
consultarSaldo(int) da
classe TerminalBancario
marcello.thiry@gmail.com
30
marcello.thiry@gmail.com
31
marcello.thiry@gmail.com
32
marcello.thiry@gmail.com
33
marcello.thiry@gmail.com
Por convenção, objetos são colocados da esquerda para a
direita, conforme a participação deles na interação
Mas os objetos podem ser colocados em qualquer ordem
marcello.thiry@gmail.com
Linha de vida (Lifeline)
 Representa um objeto que participa da
interação
 Não faz sentido definir multiplicidade
 A linha de vida (linha tracejada) representa o
tempo de vida do objeto
 Somente objetos ainda vivos podem enviar e
receber mensagens
- Notação para indicar que o objeto não existe mais
- O objeto foi destruído
marcello.thiry@gmail.com
Foco de controle / Ativação
 Indica os períodos em que o objeto
participa ativamente da interação
 Quando o objeto está executando um
método
É possível ter dois objetos
ativos ao mesmo tempo?
marcello.thiry@gmail.com
Os dois
estão ativos!
Foco de controle / Ativação
marcello.thiry@gmail.com
Os dois
estão ativos!
Foco de controle / Ativação
marcello.thiry@gmail.com
Auto-mensagem (self-message)
A mensagem é enviada
para o próprio objeto
marcello.thiry@gmail.com
Auto-mensagem (self-message)
marcello.thiry@gmail.com
Auto-mensagem (self-message)
Duas auto-mensagens
chamadas em sequência
marcello.thiry@gmail.com
Auto-mensagem (self-message)
Mostrando a
implementação da
auto-mensagem 1
Múltiplas camadas
de ativação
marcello.thiry@gmail.com
Guarda (Guard)
Representa uma
condição: a mensagem
é enviada somente se
a condição for atendida
marcello.thiry@gmail.com
Fragmento “alt” (alternativas)
marcello.thiry@gmail.com
Fragmento “alt” (alternativas)
Área executada
se e somente se
a condição for
verdadeira
marcello.thiry@gmail.com
Fragmento “alt” (alternativas)
marcello.thiry@gmail.com
Fragmento “alt” (alternativas)
SE
SENÃO, SE
SENÃO, SE
marcello.thiry@gmail.com
Fragmento “loop” (laços)
marcello.thiry@gmail.com
Fragmento “loop” (laços)
marcello.thiry@gmail.com
Fragmento “loop” (laços)
No mínimo, X vezes
No máximo, Y vezes
marcello.thiry@gmail.com
Criação de objetos
Construtor
O objeto “conta”
pode receber e
enviar mensagens
marcello.thiry@gmail.com
Referências
52
 Grady Booch, James Rumbaugh, and Ivar Jacobson. The Unified
Modeling Language User Guide. 2nd ed. Addison-Wesley, 2005.
 Ricardo Pereira e Silva. UML 2 em Modelagem Orientada a
Objetos. Visual Books, 2007.
 OMG (Object Management Group), OMG Unified Modeling
Language v2.5, 2012.
 http://www.omg.org/spec/UML/2.5/Beta1/PDF/
marcello.thiry@gmail.com
Referências
53
 Martin Fowler. UML Distilled: A Brief Guide to the Standard Object Modeling
Language. 3th ed. Addison-Wesley, 2003.
marcello.thiry@gmail.com
marcello.thiry@gmail.com

Mais conteúdo relacionado

Mais procurados

1 requisitos funcionais e não funcionais ok
1  requisitos funcionais e não funcionais ok1  requisitos funcionais e não funcionais ok
1 requisitos funcionais e não funcionais ok
Marcos Morais de Sousa
 
Uml diagrama de sequencia
Uml diagrama de sequenciaUml diagrama de sequencia
Uml diagrama de sequencia
Italo Costa
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao java
Armando Daniel
 

Mais procurados (20)

Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Diagrama de Classes
Diagrama de ClassesDiagrama de Classes
Diagrama de Classes
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentais
 
Aps lista de exercícios
Aps lista de exercíciosAps lista de exercícios
Aps lista de exercícios
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 
Aula 6 - Design e Processo de Design de Interfaces de Usuário
Aula 6 - Design e Processo de Design de Interfaces de UsuárioAula 6 - Design e Processo de Design de Interfaces de Usuário
Aula 6 - Design e Processo de Design de Interfaces de Usuário
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
1 requisitos funcionais e não funcionais ok
1  requisitos funcionais e não funcionais ok1  requisitos funcionais e não funcionais ok
1 requisitos funcionais e não funcionais ok
 
Diagrama de Atividades - UML
Diagrama de Atividades - UMLDiagrama de Atividades - UML
Diagrama de Atividades - UML
 
POO - 17 - Interfaces
POO - 17 - InterfacesPOO - 17 - Interfaces
POO - 17 - Interfaces
 
Uml diagrama de sequencia
Uml diagrama de sequenciaUml diagrama de sequencia
Uml diagrama de sequencia
 
Aula 10 - Diagrama de Sequencia.pdf
Aula 10 - Diagrama de Sequencia.pdfAula 10 - Diagrama de Sequencia.pdf
Aula 10 - Diagrama de Sequencia.pdf
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao java
 
Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de Sistemas
 
Exercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de ComputadoresExercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de Computadores
 
Aula 1 - Revisão UML
Aula 1 - Revisão UMLAula 1 - Revisão UML
Aula 1 - Revisão UML
 
UML - Diagrama de Pacotes
UML - Diagrama de PacotesUML - Diagrama de Pacotes
UML - Diagrama de Pacotes
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
 

Mais de Marcello Thiry

Mais de Marcello Thiry (12)

Expected Monetary Value - EMV (Project Management Series)
Expected Monetary Value - EMV (Project Management Series)Expected Monetary Value - EMV (Project Management Series)
Expected Monetary Value - EMV (Project Management Series)
 
Valor Monetário Esperado - VME (Série Gerência de Projetos)
Valor Monetário Esperado - VME (Série Gerência de Projetos)Valor Monetário Esperado - VME (Série Gerência de Projetos)
Valor Monetário Esperado - VME (Série Gerência de Projetos)
 
java.io - streams and files
java.io - streams and filesjava.io - streams and files
java.io - streams and files
 
java.io - fluxos (streams) e arquivos
java.io - fluxos (streams) e arquivosjava.io - fluxos (streams) e arquivos
java.io - fluxos (streams) e arquivos
 
Princípios da engenharia de software (marcello thiry)
Princípios da engenharia de software (marcello thiry)Princípios da engenharia de software (marcello thiry)
Princípios da engenharia de software (marcello thiry)
 
Software engineering principles (marcello thiry)
Software engineering principles (marcello thiry)Software engineering principles (marcello thiry)
Software engineering principles (marcello thiry)
 
Software Engineering - Introduction and Motivation (Marcello Thiry)
Software Engineering - Introduction and Motivation (Marcello Thiry)Software Engineering - Introduction and Motivation (Marcello Thiry)
Software Engineering - Introduction and Motivation (Marcello Thiry)
 
Engenharia de Software - Introdução e Motivação (Marcello Thiry)
Engenharia de Software - Introdução e Motivação (Marcello Thiry)Engenharia de Software - Introdução e Motivação (Marcello Thiry)
Engenharia de Software - Introdução e Motivação (Marcello Thiry)
 
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
POO   - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)POO   - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
 
POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)
POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)
POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)
 
POO - Unidade 1 (complementar) - Introdução a Java e UML (versão draft 01)
POO -  Unidade 1 (complementar) - Introdução a Java e UML (versão draft 01)POO -  Unidade 1 (complementar) - Introdução a Java e UML (versão draft 01)
POO - Unidade 1 (complementar) - Introdução a Java e UML (versão draft 01)
 
POO - Unidade 1 (parte 1) - Princípios e conceitos da Orientação a Objetos (v...
POO - Unidade 1 (parte 1) - Princípios e conceitos da Orientação a Objetos (v...POO - Unidade 1 (parte 1) - Princípios e conceitos da Orientação a Objetos (v...
POO - Unidade 1 (parte 1) - Princípios e conceitos da Orientação a Objetos (v...
 

Último

Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividades
FabianeMartins35
 
matematica aula didatica prática e tecni
matematica aula didatica prática e tecnimatematica aula didatica prática e tecni
matematica aula didatica prática e tecni
CleidianeCarvalhoPer
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
Aula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptxAula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptx
andrenespoli3
 

Último (20)

aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenos
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
 
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVAEDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividades
 
Produção de Texto - 5º ano - CRÔNICA.pptx
Produção de Texto - 5º ano - CRÔNICA.pptxProdução de Texto - 5º ano - CRÔNICA.pptx
Produção de Texto - 5º ano - CRÔNICA.pptx
 
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfPROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
matematica aula didatica prática e tecni
matematica aula didatica prática e tecnimatematica aula didatica prática e tecni
matematica aula didatica prática e tecni
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
Aula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptxAula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptx
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
Texto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.pptTexto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.ppt
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
O PLANETA TERRA E SEU SATÉLITE NATURAL - LUA
O PLANETA TERRA E SEU SATÉLITE NATURAL - LUAO PLANETA TERRA E SEU SATÉLITE NATURAL - LUA
O PLANETA TERRA E SEU SATÉLITE NATURAL - LUA
 

POO - Unidade 2 (parte 3) - Diagrama de Sequência (versão 1)