StructureMap è un maturo (apparentemente il più vecchio) IoC tool per .Net. Non è mia intenzione in questo post dimostrare come usarlo o spiegarne le funzionalità e neppure parlare di IoC o DI…per quello c’è Google. Piuttosto, mi interessa analizzare l’implementazione di un suo componente, il Registry DSL – riporto dal sito ufficiale:
“The Registry DSL is the recommended way to configure StructureMap, and creating Registry classes is the recommended way of using the Registry DSL. The Registry DSL is mostly a Fluent Interface with some Nested Closure usage. The intent of the Registry DSL is to make the configuration process...
Questo è il primo post di una serie dove proverò ad analizzare come progetti più o meno famosi sono stati implementati.
Parto con Funq, che come descritto dall’autore
“provides a high performance DI framework by eliminating all runtime reflection through the use of lambdas and generic functions as factories.
Developed entirely in C# using TDD, it's a container you can crack open and actually understand to the core.”
Ho colto l’invito e l’ho crack opened. La prima cosa che si nota è quanto la libreria sia compatta e minimalista, meno di 15 files in tutto, di cui:
...