On Dec 1, 2012, at 1:39 , Stéphane <stephane.er...@gmail.com> wrote:
> I wonder why did you created your own AOP instead of using/forking the one > bundled in SE ? There isnt a one true AOP approach. Specifically Johannes AOP Bundle only works on top of the DIC by rewriting services. This is quite elegant in many ways but has the disadvantage that for any class that is created manually (f.e. models and other value objects) you cannot use AOP. Furthermore its basically extending classes and wrapping the aspect functionality around the existing code using inheritance (not sure how much voodoo it can do to also deal with private methods). The approach that TYPO3 took is that it essentially rewrites the original code and then loads the rewritten code via autoloading. Meaning even if you do a manual "new Foo" they can still add aspect functionality. This has even less performance overhead in production, since its not using inheritance and not adding method calls. However it means that the original code isnt actually executed anymore. Both approaches do require code scanning which can slow down development (and yes Symfony2/Doctrine already scan code, but more scanning just means things get even slower). In terms of debuggability I think it is a bit confusing, but indeed less so than what people face with events, which is often that people need to resort to in the absence of AOP. The TYPO3 approach is even freakier, though I think they have an error handler that "fakes" the original line numbers to make debugging the original code easier. At the end of the day, there is nothing stopping you from using Johannes or the TYPO3 approach in your project and to publish guidelines etc. I dont think that AOP has any place in the components themselves. So aside from creating a Symfony2 AOP component, I am not sure what you really expect to happen. regards, Lukas Kahwe Smith m...@pooteeweet.org -- If you want to report a vulnerability issue on symfony, please send it to security at symfony-project.com You received this message because you are subscribed to the Google Groups "symfony developers" group. To post to this group, send email to symfony-devs@googlegroups.com To unsubscribe from this group, send email to symfony-devs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/symfony-devs?hl=en