Qual é o quadro AOP mais simples e menos dependente em Java?
Pergunta
Eu quero usar um quadro AOP, mas eu tenho duas restrições.
Qualquer quadro que eu escolher
-
Deve ser bastante independente. Eu pretendo usar isso em uma base de código legado, e, portanto, Não é possível atualizar potenciais dependências como commons-logging-xxx.jar para commons-logging-newest.jar.
-
Deve ser muito bem documentado, não deve ser muito complexo para compreender e integrar.
Solução
AspectJ tanto quanto eu posso dizer é apenas um compilador e impõe nenhuma dependência em programas compilados que não incluindo o tempo de execução jar AspectJ.
Ele também é mantido ativamente, parte do projeto Eclipse e tem um ambiente de desenvolvimento agradável ( AJDT , um plugin para Eclipse).
Outras dicas
Eu como Spring + AspectJ. Você pode fazer todas as suas definições pointcut em xml se você gosta ??strong>, e você não precisa mudar uma linha de código em seu material legado. Se você já conhece os conceitos de primavera e AOP, não há muito para aprender.
A aprovação, esta não se encaixa todas as suas necessidades, mas acho que, vale a pena uma olhada: http://dynamicaspects.sourceforge.net/
Positivos
- Não há dependências, exceto necessidades Java 1.5 provocada pela utilização do JavaAgent
- Sem marcação XML necessário e apenas funciona com classes POJO
- Tentei me e achei muito fácil de usar (não muito complexo)
Negativos
- Não mais activly mantido afaik
- Pobre documentação
- Você não pode fazer tudo o que um framework AOP pleno direito permite que você faça
Eu testei-o para fora há algum tempo e foi muito impressionado, mas encontrou algumas falhas que não me lembro agora. Embora você possa experimentá-lo.
Greetz, Ghad