Buscar

APOO-5

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Click to Edit Master Title Style
Click to edit Master subtitle style
*
*
Análise e Projeto Orientados a Objeto
com UML e Padrões
Parte V
Implementação (1)
© Nabor C. Mendonça 2001
*
*
Mapeando Projetos para Código 
Atividades de ordem
e concorrência 
bastante variadas.
2. Implementar
Métodos
3. Implementar 
Janelas
5. Implementar
 Esquema BD
1. Impl. Classes e 
 Def. Interfaces
4. Implementar
 Relatórios
6. Escrever Cod.
 de Teste
Notas
Sinc.
Artefatos
Análise
Projeto
Teste
Refin.
Plano
Impl.
Um Ciclo de Desenvolvimento 
© Nabor C. Mendonça 2001
*
*
Programação e o Processo Iterativo
A exploração de alternativas é muito mais difícil e cara durante a fase de programação do que durante as fases de análise e projeto!
Aspectos importantes como arquitetura e alocação de responsabilidades são melhor determinados através de processos formais de investigação e elaboração
Fases de análise, projeto, e codificação devem ser alternadas de maneira exploratória, para descobrir uma solução eficiente e economicamente viável 
© Nabor C. Mendonça 2001
*
*
Programação e o Processo Iterativo
Mudanças decorrentes de problemas encontrados na fase de implementação devem ser refletidas nas fases de análise e projeto subsequentes
© Nabor C. Mendonça 2001
*
*
Mapeando Projetos OO para Linguagens OO
Escrever código fonte para:
Definição de classes
Definição de métodos
Baseado nos artefatos produzidos na fase de projeto, especialmente diagramas de colaboração e diagramas de classe
Exemplos de código em Java para o sistema POST
© Nabor C. Mendonça 2001
*
*
Definindo os Métodos e Atributos Simples de uma Classe
Mapeamento direto dos atributos e assinaturas de métodos especificados no diagrama de classe
Mensagens create mapeadas para métodos construtores da linguagem
© Nabor C. Mendonça 2001
*
*
Adicionando Atributos de Referência
Atributos para objetos complexos “não-primitivos”
Implicitamente sugeridos no diagrama de classe através de associações, papéis, e indicadores de navegabilidade
© Nabor C. Mendonça 2001
*
*
Definindo Métodos a partir de Diagramas de Colaboração
Mensagens enviadas como resposta à invocação de um método são mapeadas para seqüências de comandos na definição do método
Exemplos para a classe POST
© Nabor C. Mendonça 2001
*
*
Definindo Métodos a partir de Diagramas de Colaboração
Método POST--enterItem:
Método POST--isNewSale (*):
private boolean isNewSale()
{
		return (sale == null) || (sale.isComplete());
}
(*) Atualizar no diagrama de classe!
© Nabor C. Mendonça 2001
*
*
Implementando Classes de Coleção
Implícitas nos valores de multiplicidade do diagrama de classe — multiplicidade maior que um
Mapeadas para classes de biblioteca do tipo “container” (Vector, Hashtable, etc.)
Tipo do container influenciado pelos requisitos
© Nabor C. Mendonça 2001
*
*
Implementando Classes de Coleção
Definindo o método Sale--makeLineItem a partir do diagrama de colaboração
Mensagem genérica add mapeada para o método addElement da classe Vetor de Java
© Nabor C. Mendonça 2001
*
*
Ordem de Implementação
Classes devem ser implementadas (e idealmente testadas individualmente) das menos acopladas para as mais acopladas
Exemplo para as classes do sistema POST:
© Nabor C. Mendonça 2001

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais