MEF

Gentle Introduction to MEF–Part Two

At the Tampa C# Meetup on August 3rd, I presented this Gentle Introduction to MEF using the same project modified over three steps. This is Part Two, where I show the application created in MEF. Recap In Part One I created an application the generates some text, and transforms it based on a selected transformation method. We introduced the following interfaces: IGenerator – implemented by our text generators ITransformer – implemented by our transformers

Gentle Introduction to MEF–Part Three

At the Tampa C# Meetup on August 3rd, I presented this Gentle Introduction to MEF using the same project modified over three steps. This is Part Three, where I complete the application created in Part One and modified to use MEF in Part Two. This part will show MEF composing the application from multiple assemblies into one application at run time. Recap In Part One I created an application the generates some text, and transforms it based on a selected transformation method.

Gentle Introduction to MEF–Part One

At the Tampa C# Meetup on August 3rd, I presented this Gentle Introduction to MEF using the same project modified over three steps. This is part one, where I show the application without MEF. Functionality The target program will have the following functionality: Transform text data using a selectable transformation method Generate source data (in case the user is too lazy to type something in) Clear the source and destination text blocks Text generation and transformation must be pluggable strategies for future expansion

Bootstrapping an Application with MEF and Autofac

I really like MEF and I really like proper IoC containers (let the flames begin). I do not think they are mutually exclusive, but best suited for different goals. I consider MEF to be a great way to perform macro level componentization. In other words, it is a way to wire up components that are physically in different assemblies, but it is not well suited for the micro level componentization in which I need to wire up my dependencies within my application.

The Last Console Driver I Will Ever Write

Nearly every application I write has a project called ConsoleDriver in it. This project is almost always the same as it is just a main routine that create the class that starts my program, wraps it in an exception block, usually configures logging, and waits until I hit enter or CTRL-C to signal the application to exit. Well, after the writing this thousands of times, or copy and pasting it probably even more times, I have had enough.