AspectoJ
Ir para a navegação
Ir para a pesquisa
AspectJ é uma linguagem de programação orientada a aspectos construída como uma extensão da linguagem Java criada no Xerox PARC . Um compilador AspectJ empurra a noção de aspecto para o código da máquina virtual, implementando assim uma noção de relação. Os próprios skins são escritos em Java estendido gerando um arquivo java ou compilados com código de máquina compatível com o gerado pelos compiladores Java.
Recursos do AspectJ
- Aspectos : Estes são definidos como "wrappers" de código. Eles se parecem com classes Java.
- Joinpoint : pontos no código Java onde um aspecto pode interceptar classes.
- Pointcuts - Grupos de pontos de junção logicamente concatenados.
- Conselhos : São trechos de código associados aos pointcuts, que injetam um novo comportamento em todos os joinpoints representados pelo pointcut.
- Declarações de membros intertipos : permitem que um aspecto defina completamente os campos e métodos implementados para várias classes.
Vantagens e desvantagens
Algumas das vantagens da linguagem AspectJ incluem:
- AspectJ permite modelar referências cruzadas, estendendo assim as possibilidades de OOP.
- É uma linguagem concisa e explícita projetada para oferecer as vantagens da modularidade.
Por outro lado, a linguagem AspectJ oferece as seguintes desvantagens:
- Sem uma ferramenta apropriada, o programador não entenderá a funcionalidade do sistema completo. Por exemplo, membros entre tipos não podem ser vistos e nunca podem ser usados.
- Modelagem, planejamento e controle são muito mais importantes na fase de desenvolvimento. Aspectos precisam ser reconhecidos pelos designers, o que facilita a tarefa dos programadores.
- Aspectos podem ser mal utilizados. Um programador pode implementar falsas funcionalidades em qualquer estágio de desenvolvimento e afetar uma ampla gama do sistema. O poder do POA pode ser difícil de entender.
Compiladores projetados para AspectJ
Existem pelo menos dois compiladores AspectJ:
- ajc parte das ferramentas suportadas pelo projeto Eclipse , e
- abc que é um compilador, otimizador e extensível, produzido em aspectbench.org.
Links externos
Wikibooks hospeda um livro ou manual sobre Let's Program in AspectJ .- Página inicial do AspectJ
- Ferramentas de Desenvolvimento AspectJ (AJDT) para Eclipse
- Documentação do AspectJ
- https://web.archive.org/web/20141216200424/http://aspectbench.org/
- "5 Leben des AspectJ" por Markus Voelter e Martin Lippert
- "Conselhos tecendo em AspectJ" por Erik Hilsdale e Jim Hugunin