Use este identificador para citar ou linkar para este item: http://hdl.handle.net/1843/SLSS-85BKYB
Tipo: Dissertação de Mestrado
Título: Especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas
Autor(es): Leonardo Vieira dos Santos Reis
Primeiro Orientador: Roberto da Silva Bigonha
Primeiro Coorientador: Vladimir Oliveira Di Iorio
Primeiro membro da banca : Marcelo de Almeida Maia
Segundo membro da banca: Marco Tulio de Oliveira Valente
Terceiro membro da banca: Mariza Andrade da Silva Bigonha
Resumo: O desenvolvimento dos recursos computacionais e o surgimento da indústria de software trouxeram a necessidade de produzir softwares rapidamente e mais complexos. Com o aumento da complexidade dos softwares, surgiram problemas de manutenção, pois a complexidade e o tamanho dos programas aumentaram, o que dificulta encontrar e corrigir erros. Neste contexto, surgiu a necessidade de desenvolver ferramentas que aumentem a produtividade e facilitem a manutenção dos softwares. Programação Orientada a Aspectos e Linguagens de Domínio Específico são metodologias de programação que visam aumentar a produtividade e facilitar a manutenção de código. Noentanto criar extensões e embarcar linguagens de domínio específico orientadas a aspectos (união das duas técnicas citadas) em linguagens de propósito geral, e.g., AspectJ, AspectC, etc., não são tarefas simples. Este trabalho apresenta a linguagem XAJ, a primeira linguagem extensível orientada a aspectos que se tem conhecimento, a qual permite estender sua sintaxe concreta, possibilitando criar extensões e linguagens de domínio específico orientadas a aspectos embarcadas. XAJ tem uma nova unidade sintática, as classes sintáticas, que encapsulam as definições das extensões, aumentando a modularidade das mesmas. Novos mecanismos de importação são definidos para o uso das extensões, permitindo que sejam usadas em escopo local, não modificando globalmente a gramática da linguagem base. As extensões definidas na linguagem XAJ são portáveis, pois não são dependentes de ferramentas de implementação, sendo definidas na própria linguagem.
Abstract: The development of computational resources and the rise of software industry brought the need to produce software more quickly and with higher complexity. With the increase on program size and complexity, severe problems of maintenance arise, because errors are more dificult to find and correct. So, it is important to create tools that make maintenance easier and improve the productivity of programmers. Domain-SpecificLanguages and Aspect-Oriented Programming can be combined to achieve these goals, building domain-specific aspect-oriented languages as extensions of languages such as AspectJ or AspectC. But building such extensions and embedding them on generalpurpose aspect languages is not an easy task.This work presents XAJ, an aspect-oriented extensible language based on AspectJ. XAJ provides features to build extensions and embedded domain-specific aspect-oriented languages. XAJ has a new compilation unit called syntax class, whichen capsulates the whole denition of a language extension, improving modularity and portability of extensions. Mechanisms for symbol import allow the definition of newgrammar rules with local scope. Extensions in XAJ are portable because they are completely defined with the language itself, without the need of additional tools for the implementation.
Assunto: Programação orientada a objetos (Computação)
Computação
Idioma: Português
Editor: Universidade Federal de Minas Gerais
Sigla da Instituição: UFMG
Tipo de Acesso: Acesso Aberto
URI: http://hdl.handle.net/1843/SLSS-85BKYB
Data do documento: 12-Mar-2010
Aparece nas coleções:Dissertações de Mestrado

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
leonardovieirasantosreis.pdf1.49 MBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.