O que é AOP?

Se você não sabe o que é orientação a aspectos (AOP) mas tem interesse em saber qual a sua utilidade, de uma olhada nesse doc. em portugues da UFSC.

http://www.inf.ufsc.br/~guto/teaching/sce/ine5612-2001-2/work/aop.pdf

mais documentos sobre AOP

http://aopdcs.enst-bretagne.fr/program.html

Eu estou trabalhando com AOP nos ultimos 6 meses, e posso dizer que é algo realmente muito interessante. Vale a pena estudar - pena que é o tipo da coisa sem volta… depois que você se acostuma com a ideia dos interceptors, por exemplo, fica extremamente difícil voltar a trabalhar com o bom e velho OOP :slight_smile:

Tem bastante (des)informação legal sobre AOP no meu blog, também. (clique no icone www no rodapé dessa msg)

acho que mais itneressante ainda, eh dar uma estudada em Separation of Concerns (SoC) e Inversion of Control (IoC).

AOP ta ai pra ajudar nisso. Componentizacao. Delegacao de responsabilidades.

Muito bem colocado, Paulo!

Aproveitando o topico, quem aih já andou dando uma olhada em IoC? O que estão achando?

Eu andei olhando IoC, e não enxergo a revolução que vcs estão falando. Pra mim é a coisa mais natural do mundo quando se pensa OO.

Será que tem alguma coisa que eu não vi??

Pra mim a grande dúvida de desenho quando vc trabalha com Inversão de Controle é manter o acoplamento entre os objetos o menor possível e não aumentar desnecessariamente o número de classes (nem de interfaces).

[]s!!

eh isso ai Tiago
nao passa de uma super boa pratica em OO.
flexibilizar as implementacoes das interfaces para poder decidi-las sem recompilacoa, ou quem sabe ateh mesmo em RunTime!!! loucao! essa eh uma aprte de IoC: quem faz o lifecycle eh o container.

Outra parte de IoC: quem faz seguranca e logging, eh o container. Nada melhor que AOP ai.

E IoC pertence a Separation of Concerns. O seu objeto nao deve ter a preopcupacao (melhor palavra pra concern?) de fazer o logging.

Taí uma coisa muito interessante com o IoC tipo 3 (usado pelo PicoContainer): o numero de classes e interfaces nao aumenta! :slight_smile:

Deem uma olhada na documentacao do Pico, acho que ela explica melhor que eu: www.picocontainer.org :smiley:

Caros amigos do AOP, eu e um colega escrevemos um tutorial sobre AOP com AspectJ.

Ai se alguem quizer dar uma olhada me manda um e-mail para que eu posso responder e enviar o tutorial, ele ainda não está acabado, mas da para tem uma boa ideia do que vem a ser AOP e como se programa com AspectJ. :wink:

E por que não publicá-lo no GUJ? http://www.guj.com.br/servlet/guj?MAMUTE_TEMPLATE=static/Temporeal

Pessoal eu gostaria de saber como eu posso aprende aop … mas tenho tambem duvidas pois eu não sei muito oop o que eu faço o que voces aconselham por favor… me ajudem… :wink:

Aprenda (bem!) OOP, depois pense em AOP.

Olá,

Pelo q andei vendo e pensando sobre AOP ela é algo que veio para expandir e completar a OOP, mas não substituí-la. Seria isso mesmo?

Outra coisa. Qual é a maneira mais comum, prática e produtiva de se utilizar AOP com java hoje em dia? Com os aclamados lightweight conteiners, a exemplo Spring e PicoContainer? AspectJ?

:wink:

… :?:

O Louds escreveu um post legal sobre AOP no blog dele recentemente.