Vector To Raster Factory & Strategy Eric Silva Abreu São José dos Campos - 15 de dezembro de 2006.

Slides:



Advertisements
Apresentações semelhantes
Soluções elegantes para problemas recorrentes
Advertisements

Desenvolvimento de Plug-ins Orientado a Testes
Padrão de Projeto Iterator
PDI em TerraLib Time TerraLib.
Design Patterns Patrícia Mateus nº3343 Carla Guerreiro nº3157
Engenharia de Software
Docente Responsável: Dra. Isabel Brito
Modelagem de Software Orientado a Objetos
Sistema para Criação e Testes de Modelos Formais
Factory Method Projeto de Sistemas de Software
Projeto de Sistemas de Software
Padrão de Projeto Memento
Padrões de Projeto Mediator.
Abstract Factory – Gustavo Lopes Mourad.
Padrão Abstract Factory
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ PROGRAMA DE PÓS-GRADUAÇÃO EM INFORMÁTICA APLICADA DISCIPLINA DE SISTEMA ORIENTADOS A OBJETOS PROGRAMAÇÃO ORIENTADA.
Aline Vasconcelos D.Sc. em Sistemas e Computação/COPPE UFRJ
1 Introdução aos padrões de projeto (GoF) Conceitos preliminares –Mecanismos de herança –Princípio de Substituição de Liskov –Acoplamento concreto x Acoplamento.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF:FactoryMethod Professores Eduardo Bezerra –
Programação orientada a objetos com Java
Trabalho de Conclusão de Curso Moisés Alves Carneiro Filho
Design Pattern e a Reusabilidade de Software
Fundamentos da Engenharia de Software
Chain of Responsibility
Linguagens Orientadas a Objeto
Marcus Vinicius Silva Soares Orientador: Luiz Merschmann Outubro / 2010.
CAMPUS NATAL-CENTRAL DIRETORIA DE EDUCAÇÃO E TECNOLOGIA DA INFORMAÇÃO
DC - UFC Copyright © 2003 Misael Santos e Rossana Andrade 1 Padrões de Projeto para Sistemas Web Misael Santos e Rossana Andrade Universidade.
Adriano S. Castro André Abdalla
1 Gestão de Desejos Engenharia de Software numa empresa certificada de Telecomunicações José Bonnet FCUP, 2005.Nov.30 ISO LABORATÓRIOS ACREDITADOS.
1 Gestão de Desejos Engenharia de Software numa empresa certificada de Telecomunicações José Bonnet FCUP, 2003.Mai.19.
APLICANDO O PROCESSO DIRIGIDO POR RESPONSABILIDADES PARA A CRIAÇÃO DE UM SUBFRAMEWORK PARA VALIDAÇÃO SINTÁTICA DE FÓRMULAS Autores: Rafael Hornung Simone.
LEONARDO SIMAS JUSSI BARROS WESLLEY VIEIRA Flyweight.
Padrões de Projeto These slides complement the E-book, Programming in the Large With Design Patterns available on both Kindle and Nook. Additional supporting.
Design Pattern (Padrões de Projeto)
Estruturas de Dados Aula 17: Estruturas Genéricas
FACULDADE DE TECNOLOGIA SENAC-RS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Uma Ferramenta para Geração de Casos de Testes para.
Padrões de Projeto.
April 05 Prof. Ismael H. F. Santos - 1 Módulo I Princípios e Padrões de Projeto de SW em Java Professores Eduardo Bezerra –
Padrão de Projeto Iterator Projeto de Sistemas de Software Thiago Pinheiro de Araújo.
Trabalho Final de Padrões de Projeto
UTILIZAÇÃO DOS PADRÕES DA COLEÇÃO WELIE PARA ELABORAÇÃO DE INTERFACES GRÁFICAS DO FRAMEWORK PARA FORMAÇÃO DE PREÇO DE VENDA Fernando Henrique Malaquias.
Padrões de Design Toacy Cavalcante de Oliveira. 2 April 20, 2015 Problema.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: Singleton, Professores Eduardo Bezerra –
Padrões de Projeto Abstract Factory.
Padrões de Projeto.
April 05 Prof. Ismael H. F. Santos - 1 Modulo I Princípios e Padrões de Projeto de SW em Java Professores Eduardo Bezerra –
DC - UFC Copyright © 2003 Misael Santos e Rossana Andrade 1 Padrões de Projeto para Sistemas Web Misael Santos e Rossana Andrade Universidade.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: AbstractMethod Professores Eduardo Bezerra –
Padrões de Projeto Alcides Calsavara
1 Design Patterns Israel Rios. 2 Origens A idéia de padrões de projeto não teve origem na ciência da computação Christopher Alexander A Pattern Language:
Modelagem Orientada a Objetos Especialização em Engenharia de Software PUCPR 1999.
Frameworks e Componentes Daniel Fernando Pavelec.
CURSO DE ESPECIALIZAÇÃO EM TECNOLOGIA JAVA DESIGN PATTERNS Prof. Cesar Augusto Tacla UTFPR/Campus Curitiba.
1 - Introdução a Padrões de Projeto
Padrões de Projetos Professora Lucélia. Conceitos É uma solução conhecida para um problema comum São técnicas que nos dão uma boa solução para determinados.
Padrões de Projetos Orientados a Objetos I Wolley W. Silva.
Teste De Sistemas Web Com JUnit E Suas Extensões
Padrões de Projeto. O que são?  Soluções provenientes de diversos projetos e utilizados por diversos programadores;  Documentados em catálogos como.
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
Padrões de Projeto de Criação Padrões de Projeto Orientados a Objetos Prof a. Danielle Martin Universidade de Mogi das Cruzes.
Jadson Xavier Muller Oliveira.  É difícil encontrar alguma definição consensual de padrão.  Definição aceitável: - São idéias que foram úteis em algum.
1 Introdução aos Padrões de Projetos Créditos: Prof. Fabio Kon - IME/USP Adaptações: Prof. Nécio de Lima Veras.
Introdução a Padrões de Projeto Padrões de Projeto Orientado a Objetos Profa. Danielle Martin Universidade de Mogi das Cruzes.
Programação Orienta a Objetos (SI) Análise e Projetos de Sistemas (LCC) 1 - Introdução a Padrões de Projeto Eduardo de Lucena Falcão.
Introdução a Padrões de Projeto Padrões de Projeto Orientado a Objetos Profa. Danielle Martin Universidade de Mogi das Cruzes.
1 Orientação a Objetos - Programação em C++ Slides 9: Programação ou Implementação: uma fase da engenharia de software. Projeto (UML) e Programação (C++,...)
Laboratório de Engenharia de Software
Singleton e Template Method
Padrões de Projeto.
Transcrição da apresentação:

Vector To Raster Factory & Strategy Eric Silva Abreu São José dos Campos - 15 de dezembro de 2006

Estrutura Introdução Motivação Objetivo Design Patterns Strategy Factory Vector2Raster Resultados Conclusão Bibliografia

Motivação Transformação de uma representação vetorial (polígono) em uma representação matricial. Maior eficiência para visualização de grande quantidade de dados, maior facilidade para sua disseminação.

Objetivo Projetar e implementar uma ferramenta flexível para rasterização de polígonos para a biblioteca TerraLib. Utilização de Iteradores de Polígonos para percorrimento das geometrias Permitir inserção de novos tipos de estratégias para rasterização. Inserção desta ferramenta na LibPDI.

Design Patterns Geralmente são definidos como soluções já testadas para problemas recorrentes. Importante no processo de desenvolvimento de software, especialmente nas áreas de manutenção e reuso de código.

Design Patterns - Strategy Classes relacionadas diferem apenas em seu comportamento. Facilidade para acréscimo de novas estratégias.

Design Patterns - Factory Fábrica de Objetos. O sistema passa a ser independente de como os produtos são criados, compostos e representados.

Interface LibPDI Checagem de Parâmetros. Reinicia Parâmetros. Execução do Algoritmo. class TePDIVector2Raster : public TePDIAlgorithm { public : TePDIVector2Raster(); ~TePDIVector2Raster(); bool CheckParameters( const TePDIParameters& parameters ) const; protected : void ResetState( const TePDIParameters& params ); bool RunImplementation(); };

//definição dos parametros da estrategia TePDIParameters strat_params; strat_params.SetParameter( "v2r_type", v2r_type ); strat_params.SetParameter( "output_raster", output_raster ); strat_params.SetParameter( "input_polsets", input_polsets ); strat_params.SetParameter( "dummy_value", output_raster_dummy ); // cria uma instancia do classe da estrategia TePDIVector2RasterStrategy::pointer v2r_strategy( TePDIVector2RasterStratFactory::make( v2r_type, strat_params ) ); //verifica se a instancia foi fabricada corretamente PDIAGN_TRUE_OR_RETURN( v2r_strategy.isActive(), "Unable to buil v2r strategy" ); //executa o algoritmo PDIAGN_TRUE_OR_RETURN( v2r_strategy->Apply( strat_params ), "Error applying v2r strategy" ); Factory & Strategy Code

Vector2Raster Criação ou seleção de um Raster. Definição de classe Uma classe Varias classes Seleção da estratégia de preenchimento.

Resultados Uma classe. Varias classes.

Resultados (cont.) Baixa Resolução. Alta Resolução.

Conclusão Com o uso dos padrões de projeto, o código além de ficar mais legível e organizado se torna também mais flexível e eficiente. Uma visão de alto nível da aplicação se torna praticamente instantânea com a utilização dos padrões de projeto.

Bibliografia Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, 1994.