Pretty Patterns

The Patterns and Practices team here provide a host of industry tested guidance on software development for the Microsoft platform, as well as software factories, application blocks and reference implementaions.  The current project I'm involved with is examing the Composite UI Application Block for creating rich smart client applications.

This block allows the developer to easily create complex user interfaces from simpler reusable parts, and provides an MVP pattern implementation from which to develop.  Additional features include dynamic loading of independent but cooperating modules, event brokering and thread marshalling for loosely coupled communications, and a framework for pluggable infrastructure services.

The Composite UI Application Block makes use of Object Builder, a Dependency Injection (DI) framework also originally written by the P&P group. Object Builder can be used to manage complex dependencies between objects and decouple objects in complex systems. There is a detailed webcast on Object Builder which is a good place to start understanding what it does for us and how it works.