incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Hammant <P...@ThoughtWorks.net>
Subject Re: [Ftpserver] Comments on the new code
Date Sun, 02 Oct 2005 03:30:18 GMT
You should aim to ship with neither Spring nor PicoContainer.

It is perfectly possible to construct a set of DI components that  
comprise FtpServer and in a main method do :

   Foo foo = new Foo();
   Bar bar = new Bar(foo);
   Apple apple = new Apple();
   apple.setFoo(foo);
   apple.setBar(bar);

This way, open doors for others to take your components and ship  
standalone, or using Spring as part of a later app, using Pico as  
part of a larger app, using Geronimo or using EJB 3.0 (etc).   
Choosing a DI framework early is nuts.

- Paul

On Oct 1, 2005, at 5:52 PM, Niklas Gustavsson wrote:

> Paul Hammant wrote:
>
>> OK, if we're keen about Dependency Injection, we'd need to change  
>> a  lot.  The basic FtpConfig component should have little  
>> knowledge of  UserManager (and others), and no coupling to it...
>>
>
> If we do aim for a DI/IoC approach (and I think we should), should  
> we choose a DI implementation (Pico, Spring...) that we ship as the  
> default implementation? Or, should we try to implement a  
> specialized runtime ourselves? I would certainly go for the former  
> option and would favour Spring but I'm guessing that Paul won't  
> agree on this choice :-).
>
> /niklas
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
> For additional commands, e-mail: general-help@incubator.apache.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
For additional commands, e-mail: general-help@incubator.apache.org


Mime
View raw message