Navigation


RSS: subscribe



Dependency Injection Killed by Simon Ince

Tuesday, July 1, 2008 posted by Gael Fraiteur 6 Comments

Dependency Injection is Dead! is the somewhat provocative title of an interesting post of Simon Ince.

Simon indeed proposes another approach: AOP-powered Dependency Resolution. The idea is to use aspects on fields or properties to resolve the dependencies on-demand, when the property or field value is retrieved. Technically, it would be enough to turn the old good [Dependency] custom attribute into an aspect.

I won't copy-paste Simon's stuff, so please read from the horse's feather on his blog.

A refreshing view on a topic that tends to become sanctified and therefore unchallenged in our community.

Even if this approach does not solve all the use cases of Dependency Injection, covers a lot of them in quite an elegant way. While it would be theoretically easy to use this approach with dependency injection frameworks (because dependency resolution is obviously one the major components of a DI framework, the other big one being the object builder), I noticed that Unity does not offer the functionality at the required level of granularity. A pity, which I have notified in illo tempore to the Unity team. Maybe some day wind will turn...

Happy PostSharping!

-Gael

Introducing PostSharp VIP Content

Monday, June 30, 2008 posted by Gael Fraiteur 0 Comments

I have opened a special section of the forum for VIP community members. The objective is to share content with DNUG leaders, speakers, and technical writers.

Indeed, I've long looked for a way to make it easier for speakers to get something to show about PostSharp: some figures, some slides, or even whole presentations ready to be served. However, I needed some way to ensure that the same content will not be served twice to the same audience, and they the audience does not just get the same content as it can download from the web site.

The solution I found: make this content available to selected people only.

So if you are a user group team leader, conference organizer, speaker, technical writer -- or if you have any other good reason to get access to this content -- you can request membership in the VIP group. The VIP section is implemented as a protected forum in our message board, where downloads are simply attachments to the topic. Every time the content will be delivered somewhere, I'll add a post to the topic.

By the way, even if you get access to this section, you still need to respect copyrights and request for permission before publishing any non-trivial part of the content.

I just hope I don't frustrate tons of people because of that... Oh, if you want to see the content, why not ask your UG leader to organize something?

Happy PostSharping,

Gael

PostSharp Present At SDN Event June 2008, Ede, The Netherlands

Wednesday, May 28, 2008 posted by Gael Fraiteur 0 Comments

I will present aspect-oriented programming and PostSharp at the Software Development Event (SDE) in Ede, The Netherlands, on June 23th, 2008.

I have two sessions of 75 minutes each:

  • Addressing non-functional requirements with aspects: a general introduction to aspect-oriented programming (AOP) with a presentation of typical problems of software engineering that can be better solved using AOP and an outlook at different popular AOP solutions.
  • Towards more complex aspects using PostSharp: a thorough trip into PostSharp Laos showing how to concretely develop more complex aspects and apply them to business applications.

Although my talks have been placed into the Visual Basic track, it is actually not specific to VB at all, and all samples will even be in C#.

I will be there till Tuesday, so if anyone there wants to meet me (in Eve or Amsterdam), there is an opportunity. Just let it know!

Happy PostSharping!

Gael

PostSharp Present At CodeCamp Krakow, Poland, June 7th, 2008

posted by Gael Fraiteur 2 Comments

PostSharp @ Krakow Code Camp

I will present PostSharp at the next Code Camp taking place June 7th in Krakow, Poland.

The talk will start with a general introduction to AOP, then go to specific solutions using PostSharp.

It is be a honor for me to stand besides a great speaker (and professional evangelist) Chris Koenig.

If anyone of the Pole .NET community wants have some more in-depth discussion or just have a beer, I will be there till Sunday evening.

Happy PostSharping!

Announcing PostSharp 1.0 RC3

Monday, May 26, 2008 posted by Gael Fraiteur 0 Comments

I am pleased to announce the third release candidate of PostSharp 1.0, available for download. This is also the last release candidate, which means that I would gladly promote it to the status of stable release if no bug is reported.

Indeed, RC2 proved to be very stable. Among the reported issues, very few affected core components. Most efforts have been directed to a better integration with MSBuild and a better packaging.

Let me cite a few improvements you can be looking forward:

  • Improved Compile-Time Performance: Compiling PostSharp samples is 65% faster with RC3 than with RC2 if you use the standard Windows Installer. No real magic here: since PostSharp is stable enough, we now ship the release build instead of the debug build. Additionally, PostSharp is now correctly configured to use native images.
  • Improved User Guide: There is now a full end-user documentation of the PostSharp Platform and PostSharp Laos.
  • Improved Packaging: The installer does not place assemblies in GAC any more. The no-installer package is now fully-featured with documentation and samples.
  • Samples Browser: Documentation and source code of samples are now better integrated. You can open a sample into Visual Studio directly from the samples documentation browser.
  • Support for References to .NET 1.0: There is now a workaround that makes PostSharp accept assemblies (generally third-party dependencies) compiled for the .NET Framework version 1.0 or 1.1.
  • Compatibility with VSTS Unit Tests: VSTS Unit Test will not complain of artifacts generated by PostSharp any more.

For a complete of resolved issues and implemented features, please refer to this listing in our issue tracker.

Happy PostSharping!

Gael

Introducing DDDProject

Monday, May 19, 2008 posted by Gael Fraiteur 1 Comments

I'm pleased to introduce DDDProject, a project of Nicolas Mousson, which aims to be a DDD framework by combining multiple open sources technologies: Castle Windsor for IoC, NHibernate for persitence, and PostSharp Laos for aspects.

For details, I invite you to read their presentation blog post.

Courage et bonne chance a Nicolas!

Gael

Bug in .NET 2.0 SP2 Prevents Runtime Use of PostSharp Laos

Thursday, May 15, 2008 posted by Gael Fraiteur 3 Comments

I have just reported a bug to Microsoft Connect related to .NET 2.0 SP2 Beta, installed with .NET 3.5 SP 1 Beta, itself installed with VS 2008 SP1 Beta. The bug causes programs transformed by PostSharp to crash. It happens with OnFieldAccessAspect on static fields. You have been warned!