In June Scottish Developers have two evening events with Kathleen Dollard. Kathleen is the Chief Technologist for AppVenture (www.appventure.com) where she leads the application generation efforts. She has been a Microsoft MVP for 11 years and is a member of the INETA Speaker’s Bureau. Kathleen has worked extensively with application code generation and is the author of Code Generation in Microsoft .NET (from Apress). She has published numerous articles on a range of .NET technologies and writes the monthly column “Ask Kathleen” in Visual Studio Magazine (www.visualstudiomagazine.com). Kathleen is also active in the Northern Colorado .NET SIG, Denver Visual Studio User Group, Northern Colorado Architect’s Group, and IASA Denver.
Rethinking Object Orientation
Monday 22nd June, 2009 at the offices of Baillie Gifford & Co.
Decades after object orientation design altered programming, it’s still evolving, and we’re still learning to use it better. Many changes in the tools we use and how we write applications affect the approach we take to OOD. Some of these changes relate to architecture where new approaches like SOA and the layering revolution behind Silverlight alter the place of traditional OOD within the bigger picture of architecture. Other changes are language improvements that alter the very meaning of the phrase “object” from a design point of view. While touching on architecture, this talk focuses primarily on the effect of language features like generics, extension methods, delegates/lambda expressions, partial classes/methods, reflection, anonymous types, and declarative programming. I’ll the growing role of interfaces as a contractual base in block based development and show a roll your own example of dependency injection so you understand this basic technique more often accessed through a tool. You’ll come away ready to leverage new features while retaining solid overall design.
Your Application in Pieces – MEF and MAF
Tuesday 23rd June, 2009 at Glasgow Caledonian University
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. Microsoft has exposed different provider models in many areas of the framework and libraries, and this year has moved toward consolidating its efforts at decoupling with the Managed Extensibility Framework, or MEF. This tool differs from an IoC container because its focused directly at simplifying the extension of applications and focuses at extensibility, discover, and composition. The underlying engine can support Microsoft efforts like Visual Studio and your own applications. MEF comes up short when you encounter isolation and versioning issues, such as wanting that external code to run in its own AppDomain. The Managed Add-In Framework, or MAF, focuses on these problems and the significant complexity they bring with System.AddIn namespace of .NET 3.5. You’ll learn more about architecting applications in pieces and the sweet spot of using MEF and MEF together. You’ll leave ready to evaluate the role of MEF and MAF in your applications.