Was checking up Apache avalon and found that around november this year the Apache Avalon project was finally closed. It now stands forked into various projects namely Excalibur, Loom, Castle and Metro.
During my java days this concept was pretty new and getting popular atleast in my circle of people who were crazy about all this work including me.
The whole concept of Avalon revolved around IoC (Inversion of Control). IoC is a design pattern (fairly advanced in my opinion to people who limit themselves to simplicity and try sticking to the GoF patterns) which relates to how well components are to be built which put plain do only what they are intended to do (say business functionality) and leave the rest of the hard work to the container which happens to host them.
A good description of IoC is presented here.
Now in the J world this is a big thing with the application servers as you end up writing business functionality in EJB's and things like that and leave it to the app server which hosts your business components (here EJB's) to take care of deployment, transaction management, component lookups, logging and yada yada yada stuff. Hence my interests loomed around this area for some time and I left it out for quite some time.
I am right now thinking of how much is there a need / relativity for IoC in .net ?
> I think Mr fowler has an answer to that too :)
> I also read the following other blog posts which go in detail to discuss IoC (aka Dependency Injection) to a good extent wrt .net.
Daniel Cazzulino explains how .net has IoC built into the framework itself.
Sami Jaber from DotnetGuru.org talks about lightweight containers.
Alex Hoffman talks about the service locator pattern available in the .net Fx here.