Wednesday, April 06, 2005

Aspect Orientated Programming in .NET

I was just chatting with David Orriss and he recommended the Spring Framework for doing Aspect Orientated Programming (AOP) in .Net. They also have a Java version. Where AspectJ is a precompiler, Spring uses an AOP proxy objects to direct pointcuts to the aspect classes via XML descriptors. I think this is the same way that RemObjects' Taco works.

AOP looks promising and may be the next software development evolutionary step after Objects. David has been doing a lot with it on the Java side and speaks highly of it. I am glad to see AOP tools showing up for .NET now too.

Update: More links on AOP in .NET

  • Aspect# is an AOP ( Aspect Oriented Programming ) framework for the CLI (.Net and Mono). Open Source ( Apache License v2 ) on SourceForge.net.
  • The LOOM .NET project aims to investigate and promote the usage of AOP in the context of the Microsoft .NET framework. It offers two different weavers.
  • aosd.net is home to the annual Aspect-Oriented Software Development conference and community.
  • A MSDN paper on Aspect-Oriented Programming Enables Better Code Encapsulation and Reuse covers both COM and .NET. Seems like I read this a while ago. For .NET they were advocating using attributes, which is an interesting idea, but requires modifying the original code to add the aspect.

1 comment:

Alan said...

You can check SetPoint at http://dependex.dc.uba.ar/setpoint