【www.gdgbn.com--js教程】


Jon Tirsen在他的weblog里说,他看到一个叫PicoContainer的有趣项目,并立刻投身其中。这个自称“IoC(Inversion of Control)type 3”的微容器有什么吸引人的魅力?

PicoContainer / NanoContainer I""ve recently joined two new projects:
http://www.picocontainer.org

http://www.nanocontainer.org

The founders of the project are Paul (AltRMI, Enterprise Object Broker) and Aslak (XDoclet, MiddleGen). Actually they pair-programmed most of it at Paul""s place and a lot of beer was involved. The end result: a neat, simplistic and wonderfully TDDed piece of work. Joe (SiteMesh, QDox), my unit-testing guru, is also in on it.

It""s basically an Inversion-of-Control-container/framework/micro-kernel. Pico will be the simplistic micro-kernel and Nano will be a bunch of containers serving different purposes (most built on top of Pico).

I""m not an IoC-expert by any means, and, well, I didn""t know much about it before chatting with Paul and Aslak. The cool (and quite controversial) thing is that Pico (at least by default) implements style 3 IoC, which means constructors are used to define dependencies. Smart!

I will implement some Nanning support in Nano so that aspects can define dependencies on services and the container will resolve them properly, the aspects will also be able to aspectify the components transparently. The details are far from finalized, just a bunch of semi-digested ideas. I""ll give you a couple of use-cases though. An aspect implementing transparent persistence with Prevayler could retrieve it""s Prevayler-instance just by declaring it in its constructor:

public class PrevaylerAspect {  public PrevaylerAs

本文来源:http://www.gdgbn.com/wangyezhizuo/13242/