Friday, April 04, 2008

Unity 1.0, Microsoft's Dependency Injection, Inversion of Control (DI/IOC) Container, has RTW'ed

Microsoft Downloads - Unity Application Block (RegWare)

"...

The Unity Application Block (Unity) is a lightweight, extensible dependency injection container. It facilitates building loosely coupled applications and provides developers with the following advantages:

  • simplified object creation, especially for hierarchical object structures and dependencies.
  • abstraction of requirements; this allows developers to specify dependencies at run time or in configuration and simplify management of crosscutting concerns.
  • increased flexibility by deferring component configuration to the container.
  • service location capability; this allows clients to store or cache the container.

...

  • Microsoft .NET Framework 2.0, 3.0, or 3.5
  • Microsoft Visual Studio 2005 or Visual Studio 2008 development system (any of the the following editions):
    • Stand Edition
    • Professional Edition
    • Team Edition for Software Developers
    • Team Edition for Software Testers
    • Team Edition for System Architects
    • Team Suite
  • " [Description leached in near full]

    Microsoft Downloads - Unity Application Block Documentation for Visual Studio 2005

    "The integrated documentation for the Unity Application Block (Unity) to be used with Visual Studio 2005.

    ..."

    Microsoft Downloads - Unity Application Block Documentation for Visual Studio 2008

    "The integrated documentation for the Unity Application Block (Unity) to be used with Visual Studio 2008.

    ..."

    Now if only I truly knew how to best use and apply this...

    Oh well, I guess you have to start somewhere.  :)

    2 comments:

    Anonymous said...

    Unity doesn't offer much in terms of AOP, NHibernate support, etc... very young. I suggest taking a look at Spring.NET. It's been around for awhile, is more mature, has a ton of features.

    I do find it interesting that P&P attempts to duplicate a IOC container rather than just use some good proven ones such as Castle Windsor and Spring.NET. Wonder why they don't leverage what is there ?

    Thanks for the information.

    Greg said...

    I hear you... I've been watching Castle Windsor for a bit now.

    IMHO, Unity's release should boost the other IoC/DI containers. Now that MS thinks it's (DI/IoC) "real" and has invested effort in it, I'm thinking it should give legs to the more mature ones... It gives instant credibility to similar efforts, again espically too those that are mature like Windsor, Spring.Net, etc.

    Personally I think it's good they started "fresh". They will either bring something new to the table or validate what the others are already doing.

    A rising tide lifts all boats, yada, yada...

    But then again since I don't really know crud about DI/IoC I may just be taking out my...

    ;)