¿Cuál es el marco AOP más simple y menos dependiente en Java?
Pregunta
Quiero usar un marco AOP, pero tengo dos restricciones.
Cualquier marco que elijo
-
Debe ser bastante independiente. Planeo usar esto en una base de código heredada, y por lo tanto no puede actualizar las posibles dependencias como commons-logging-XXX.jar a commons-logging-newest.jar.
-
Debe estar bastante bien documentado, no debe ser demasiado complejo de entender e integrar.
Solución
AspectJ por lo que puedo ver es solo un compilador y no impone dependencias en los programas compilados aparte de incluir el jar de tiempo de ejecución AspectJ.
También se mantiene activamente, parte del proyecto Eclipse y tiene un entorno de desarrollo agradable ( AJDT , un complemento para Eclipse).
Otros consejos
Me gusta Spring + AspectJ. Puede hacer todas sus definiciones de puntos de corte en xml si lo desea , y no necesita cambiar una línea de código en su material heredado. Si ya conoce los conceptos de primavera y AOP, no hay mucho que aprender.
Bien, este no cumple con todos sus requisitos, pero creo que vale la pena echarle un vistazo: http://dynamicaspects.sourceforge.net/
Positivas
- Sin dependencias, excepto que necesita Java 1.5 debido al uso de JavaAgent
- No se necesita marcado XML y solo funciona con clases POJO
- Lo intenté y me pareció muy fácil de usar (no muy complejo)
Negativos
- No más afaik mantenido activamente
- Mala documentación
- No puede hacer todo lo que un marco completo de AOP le permite hacer
Lo probé hace algún tiempo y quedé bastante impresionado, pero encontré algunos problemas técnicos que no recuerdo en este momento. Aunque podrías intentarlo.
Greetz, GHad