[pt] Associado a cada sistema de controle de versão existe uma ferramenta de
comparação responsável pela extração das diferenças entre duas versões de um
documento. Estas ferramentas costumam realizar a comparação baseando-se na
informação textual dos documentos, em que o elemento indivisível na comparação
é a linha ou a palavra. Porém, o conteúdo versionado normalmente é fortemente
estruturado (como exemplo, linguagens de programação) e a utilização deste
mecanismo pode desrespeitar limites sintáticos e outras propriedades do
documento, dificultando a interpretação das alterações. Nesse trabalho foi
construída uma ferramenta para identificar as diferenças entre duas versões de um
documento utilizando um mecanismo de comparação baseado na sua estrutura
sintática. Desta forma, é possível identificar com maior precisão as diferenças
relevantes ao leitor, reduzindo o esforço para compreender a semântica das
alterações. A ferramenta construída é capaz de suportar diferentes tipos de
documentos a partir da implementação de componentes que tratem das sintaxes
desejadas. O componente implementado como exemplo neste trabalho trata a
sintaxe da linguagem de programação C++. / [en] Associated with each version control system there’s a comparison tool for
extracting the differences between two versions of a document. These tools tend
to make a comparison based on textual information from documents, in which the
indivisible element is the line or word. But the content versioned is usually highly
structured (for example, programming languages) and the use of this mechanism
can disrespect syntactical limits and other properties of the document, becoming
difficult to interpret what really changed. In this work we created a tool to identify
differences between two versions of a document using a comparison mechanism
based on the syntactic structure. Thus, it is possible to identify more precisely the
relevant differences to the reader, reducing the effort to understand the semantics
of the changes. The tool can support different types of documents by
implementing components that interprets the desired syntax. The example syntax
component implemented in this work deals with the syntax of the programming
language C++.
Identifer | oai:union.ndltd.org:puc-rio.br/oai:MAXWELL.puc-rio.br:16282 |
Date | 15 September 2010 |
Creators | THIAGO PINHEIRO DE ARAUJO |
Contributors | ARNDT VON STAA |
Publisher | MAXWELL |
Source Sets | PUC Rio |
Language | Portuguese |
Detected Language | Portuguese |
Type | TEXTO |
Page generated in 0.0015 seconds