Hi Tiago,
I think inversion of control and dependency injection are useful techniques. Over the holidays when I allowed myself some time to do some prototyping in Silverlight I first used Caliburn Framework but then switched to Unity/Prism when it was released for Silverlight.
Introducing it into an established architecture may not be so easy, one must consider backward compatibility when one has been releasing a product for 4 years that others are building custom functionality on top of. I'd like to find a way of doing it within a UserControl so that it fits in well with our current feature plugin model.
In any case I don't yet have the luxury of being able to just work on things I would like to do for archtitectural ideaology. Once I am actually making a living on my efforts then I will have more freedom to channel my efforts, but right now my efforts are channeled on developing some additional add ons for sale so I can make a living and improving the core functionality to make mojoPortal more popular. Meanwhile I live mostly on savings, so it is crucial I stay focused on generating revenue before I run out of savings. Every year new techniques and new technologies come out and its always easy to see things one would/could do differently or better but throwing out working code and re-doing it for the sake of architectural ideals as they evolve over time is not practical. This year MVC is all the rage but I have no plans to rebuild mojoPortal using MVC, it adds no user value and would take a huge amount of effort.
So, while I agree these are useful techniues for architecture, I have no immediate plans to re-factor mojoPortal into a different architecture just so I can use this technique. If it can be used within the exsiting architecture like within UserControl then it could be more immediately useful.
Best,
Joe