SUGESTÃO: Então você gostaria de usar AspectJ?

Ola,

Gostaria de saber se tem alguem usando os conceitos de aspectos no Java,
e se poderiam passar alguma experiencia sobre vantagens/desvantagens desta
abordagem, como isso pode ser util em um ambiente pratico de desenvolvimento
de sistemas, se pode ser aplicado a qualquer tipo de aplicacao, etc?

Eu andei lendo alguns artigos com os famosos e pouco abrangentes exemplos de
computacao grafica tipo Objeto é Ponto ou Linha, mas achei que o conceito de
“advice” é praticamente a mesma coisa de chamar um metodo generico antes
ou depois de determinado codigo (pointcut). Queria saber se isso tem algo a mais,
algo que realmente enriqueca o codigo, etc.

O pessoal ja discutiu esse assunto aqui, se quiser dar uma olhadinha,
não vai responder suas perguntas, mas tem alguma coisa.

http://www.guj.com.br/forum/viewtopic.php?t=12242

[quote=“edilmar”]Queria saber se isso tem algo a mais,
algo que realmente enriqueca o codigo, etc.[/quote]

Na verdade ele empobrece o código :shock:

ehehe eu explico.

Essa chamada ao código genérico que você faz te amarra em um monte de coisas … a assinatura (parametros etc e tal) do método, package, função, etc…

Com AOP vc coloca esse codigo generico depois, o objeto nem sabe disso e vc vai la e loga o que ele tá fazendo, depois vc vai lá e faz uma validação de ACL pro usuário acessar esse metodo, depois vc vai lah e desabilita o metodo todo … depois vc vai la e faz o que quiser, isso tudo sem ter uma linha de codigo a mais na classe (por isso eu disse que empobrece o codigo :smiley: ) …

A sua classe faz soh o que lhe compete e depois com AOP vc coloca as firulas que sao um mal necessário (mas q toda hora vc tinha que ficar copiando e colando pq nao ha muito como reutilizar chamadas em métodos :wink: )

Ajudou ou complicou?