Ciência da Computação Análise e Projeto Orientado a...
Transcript of Ciência da Computação Análise e Projeto Orientado a...
![Page 1: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/1.jpg)
Análise e Projeto
Ciência da Computação
1
Análise e Projeto
Orientado a Objetos
Anderson Belgamo
Introdução
![Page 2: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/2.jpg)
Conteúdo� Princípios da Orientação a Objetos:
� Classes
� Objetos
� Encapsulamento
� Herança
� Agregação e Composição
2
� Agregação e Composição
� Metodologias de Análise e Projeto de Software orientado a
objetos.
� Modelagem Orientada a Objetos
� Diagramas UML
� Mapeamento dos Diagramas UML
� Linguagem de Programação Orientada a Objetos
� Padrões de Projeto.
![Page 3: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/3.jpg)
Bibliografia - UML
3
www.omg.org
![Page 4: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/4.jpg)
Bibliografia – Padrões de Projeto
4
![Page 5: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/5.jpg)
Bibliografia – POO e JAVA
5
![Page 6: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/6.jpg)
Mercado de Trabalho� Certificação em UML
�http://www.omg.org/uml-certification/index.htm
� Vagas
�http://www.manager.com.br/vagas_de_emprego
6
�http://www.manager.com.br/vagas_de_emprego
s.php/uml
�http://www3.catho.com.br/vag/busca/search.php
?q=uml&x=91&y=29
![Page 7: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/7.jpg)
Modelagem Orientada a Objetos
Provérbio: “Possuir um martelo não torna alguém um arquiteto”
� Conhecer uma linguagem orientada a
7
� Conhecer uma linguagem orientada a objetos (OO) é um primeiro passo necessário, mas insuficiente, para criar sistema orientados a objetos.
�Aprender a pensar em termos de objetos é
fundamental.
� UML: Unified Modeling Language.
![Page 8: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/8.jpg)
Análise versus Projeto
� Análise enfatiza uma investigação doproblema e dos requisitos, em vez de uma solução:
Modelagem Orientada a Objetos
8
solução:
�“Faça a coisa certa”
� Projeto enfatiza uma solução conceitualque satisfaça os requisitos e não sua implementação:
�“Faça certo a coisa”
![Page 9: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/9.jpg)
O que é análise (AOO) e projeto orientado a objetos (POO)?
� AOO: ênfase em encontrar e descrever os objetos – ou conceitos – no domínio do
Modelagem Orientada a Objetos
9
objetos – ou conceitos – no domínio do problema.
� POO: ênfase na definição dos objetos de software e como eles colaboram para a satisfação dos requisitos.
![Page 10: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/10.jpg)
Aviao
numero
public class Aviao
{
private String numero ;
public List getNumero() { ... }
}
1
Conceito de domínio
2
Visualização de
um conceito de domínio
3
Representação em
Linguagem de programação
Orientada a objetos
10
}
Sistema de Controle de Vôo:
AOO : identificação de conceitos : Avião, Vôo, Piloto etc;
POO : atribuição de responsabilidades : um objeto Avião deve ter um artributo
número e um método getNumero. Plane object must have at tailNumber attribute
and a getFlightHistory method;
P1OO : codificar : uma classe Avião em JAVA.
1P de Programação
![Page 11: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/11.jpg)
� Estruturada: decomposição de umproblema por uma função ou processoresultando em estrutura hierárquica deprocessos.
Diferença de OO e Estruturada
11
processos.
� OO: ênfase em decompor espaço doproblema em objetos.
![Page 12: Ciência da Computação Análise e Projeto Orientado a Objetosunimep.br/~anbelgamo/APOO/1-Introdu%e7%e3o.pdfMetodologias de Análise e Projeto de Software orientado a objetos. ...](https://reader031.fdocument.pub/reader031/viewer/2022022711/5c003f1a09d3f20e6b8c9733/html5/thumbnails/12.jpg)
Unified Modeling Language (UML)
� Uma linguagem para especificar, visualizare construir artefatos de sistemas de
Solução para Modelagem
12
e construir artefatos de sistemas de software (UML 1.0 1997).
�Visualização é importante: ela ajuda na análise
e comunicação de software, um produto
intangível.
� Definição de um processo de desenvolvimento: Unified Process.