PostSharp AOP Framework Updated

by Al Tenhundfeld on Mar 16, 2009 |

PostSharp, the popular Aspect Oriented Programming framework for .NET, has a new release: Version 1.5 CTP 3. This release includes the bug fixes of 1.0 SP1, improves upon some design issues in 1.5 CTP 2, and most important, has dramatic performance enhancements. PostSharp 1.5 CTP 3 is now twice as fast as PostSharp 1.0, according to release notes. 1.5 CTP 3 is available for download on the PostSharp site.

Unlike Inversion of Control containers that provide AOP functionality through design-time specification of method invocation interceptors, PostSharp integrates through the application of attributes. PostSharp inserts itself in the build process and post-processes the compiled assembly. Since PostSharp works at MSIL level, it supports virtually all static languages targeting the .NET Framework.

Improving on version 1.0, version 1.5 contains the following improvements:

  • Reading assemblies without loading them in the CLR
  • In version 1.0, PostSharp required assemblies to be loaded in the CLR (i.e. in the application domain) to be able to read them. When PostSharp processes a Silverlight or a Compact Framework assembly, it is never loaded by the CLR.
  • Lazy loading of assemblies
  • When PostSharp has to load a dependency assembly, it now reads only the metadata objects it really needs, resulting in a "huge performance improvement and much lower memory consumption.
  • Performance optimizations
  • The code has been carefully profiled and optimized for maximal performance.
  • Support for Novell Mono
  • PostSharp is now truly cross-platform. Binaries compiled on the Microsoft platform can be executed under Novell Mono. Both Windows and Linux are tested and supported. A NAnt task makes it easier to use PostSharp in these environments.
  • Support for Silverlight 2.0 and the Compact Framework
  • You can add aspects to your projects targeting Silverlight 2.0 or the Compact Framework 2.0.
  • Pluggable Aspect Serializer & Partial Trust
  • Previously, all aspects were serializer using the standard .NET binary formatter. It is now possible to choose another serializer or implement your own, and enhance assemblies that be executed with partial trust.

CTP 3 is expected to be the final 1.5 CTP, with the first Release Candidate expected within 1-2 months, depending on bug reports.

Rate this Article


Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

General Feedback
Marketing and all content copyright © 2006-2016 C4Media Inc. hosted at Contegix, the best ISP we've ever worked with.
Privacy policy

We notice you're using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.