Hello all.
In light of hammett's email yesterday, I thought I'd play a little devil's advocate in order to feel out everyone's intentions for Excalibur. So why don't I jump right into the heart of it with this question:
Are we here to maintain the Excalibur/Fortress codebase or do we also have intentions on growing it?
I say that because since Excalibur and Fortress's inception there are a lot of new players in the IoC framework field. With strong development coming from the likes of Pico, Nano, Spring, and many others, what role do we want Excalibur to play? What problems are we trying to solve either better or for the first time? Or are we only looking at preserving the existing codebase and providing some enhancements to allow an "escape route" from dependence on Avalon or ECM or Fortress?
IMO we need to distinguish between containers and components,
ie is excalibur's mission more focused on the former or the latter?
In either case, the key issue is going to be interoperability.
If I were to put my money on it, I would bet on the lowest common denominator approach eventually prevailing.
So, rather than debating long and hard about the merits of this
or that IoC framework, we should really try to aim to make the largest number of development resources available, while trying to minimize
the the duplication of code.
- containers: obviously here the competition from IoC frameworks which do not have any API framework dependencies will be strong. So Avalon containers need to support other IoC components and not "mandate" them to depend on the A-F. Adding dependency injection to Avalon containers is a step in this direction.
- components: much of the same, but the alternate side of the coin.
Components should be made to support multiple IoC frameworks and
paradigms, and separated from the truly IoC-independent bits
could also eventually be migrated elsewhere (eg commons).
In this sense, a lot of Excalibur components would be "wrappers" for other components (eg commons), but IoC enabled.
An example of this 'onion' approach is
http://spice.codehaus.org/threadpool, which uses the commons-pool component and supports Avalon, DNA and Pico IoC frameworks.
Cheers
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Apache Excalibur Project -- URL: http://excalibur.apache.org/
