The MDN meeting on the 27th of August, 2009 will be an INETA sponsored event. INETA
will make arrangements for Kathleen Dollard to be able to speak to our group. Kathleen
is a great speaker and authority on the subject of code generation and software composability.
We're very happy and lucky to have her come up and present two sessions at our meeting.
A third session, also on code generation will be done by Mark Blomsma.
We'll start the meeting with free pizza at 12pm. With the first session starting at
12:30pm. We aim to finish around 5pm.
Code Generation
by Kathleen Dollard
Code generation is undergoing a renaissance as Microsoft jumps into the picture and
converges with our increasing understanding of code generation. You’ll learn core
code generation principles that transcend all code generation tools. Building on this
you’ll get a dip into template languages seeing both T4 which is part of Visual Studio
and VB9 XML literal templates in order to understand the strength of each approach.
Once you understand how templates work, you’ll dive into metadata – the part of the
system that uniquely describes the specific application your building. You’ll see
two approaches to protecting handcrafted code on the .NET platform. And you’ll see
how to hook generation into your development process. The overall process of application
generation has not matured and is rapidly changing – this talk doesn’t promise silver
bullets. Instead you’ll leave with a good understanding of the latest code generation
techniques and how you can fit them into your unique development environment.
Introduction to Visual Studio T4
by Mark Blomsma
An introduction to a somewhat hidden feature in Visual Studio: Text Template Transformation
Toolkit or T4 for short. You will learn about using T4 and the statement, expressions
and declarations needed to succesfully use T4 in your software projects.
Composable Applications with MEF
by Kathleen Dollard
Decoupling portions of your application has tremendous payback during both development
and maintenance. Your application becomes more testable and flexible and can more
easily evolve to meet changing demands. Decoupling your application also allows a
new level of partnership with external groups because you can safely incorporate their
code in your application without recompiling or releasing source code – effectively
creating ecosystems supported by your application. Over the years Microsoft has released
several different provider models in different areas of the framework, libraries,
and supporting tools. This year several teams at Microsoft moved toward consolidating
these efforts with the Managed Extensibility Framework, or MEF. This tool differs
from an IoC (Inversion of Control) container because focuses directly at application
composability, extensibility, and discover. MEF supports Microsoft efforts like Visual
Studio 2010, but it can also play a role in your current applications.
Kathleen Dollard is a consultant, author, trainer, and speaker. She’s been
a Microsoft MVP for over ten years and has spoken about .NET in 28 states and 5 countries.
She’s written dozens of articles including the “Ask Kathleen” column in Visual Studio
Magazine. She also wrote “Code Generation in Microsoft .NET” (Apress). Her passion
is helping programmers be smarter in how they develop by learning to better use .NET
languages, libraries and platforms. She works with WPF, WF, as well as core technologies
including System.AddIn. She’s currently creating template infrastructure for code
generation using VB XML literals. After working on the problem of capturing business
intent in metadata and test definitions for years, she’s working with industry improvements
in these areas. She’s also working on full life cycle improvements, such as unit testing,
better debugging and static analysis (FxCop). When not working, she enjoys woodworking,
snowshoeing, and kayaking depending on the outdoor temperature.
Mark Blomsma is a consultant, author, trainer and speaker. He's been a Microsoft
MVP for 6 years and has spoken at our meeting many time. He runs a consulting business
up in Lincoln, ME.
Location
The event will be held at:
State of Maine Offices
Harlow Building
First floor conference room
18 Elkins Ave
Augusta
RSVP
Please register so we can accommodate accordingly and make sure we have enough
pizza.
Register here: http://www.maine-devnet.org/Home/SignUpForEvent.aspx