peter provost sr. program manager microsoft corporation session code: dev403
TRANSCRIPT
Building Extensions for the Microsoft Visual Studio Architecture ToolsPeter ProvostSr. Program ManagerMicrosoft Corporation
SESSION CODE: DEV403
By the End of this Talk, you will understandHow extensibility works in our architecture models
How to create extensions to tailor the experience
What you can do (and can’t do) with extensibility
A little bit about MEFMEF is a dynamic composition library created by Microsoft that ships with .NET 4.0
Visual Studio includes MEF as a new extensibility mechanism
For our purposes, MEF lets us load and compose extensions into our designers and models
Visual Studio 2010
Visual Studio 2010 Architecture Tools
Models
Designers
UML API Extensibility API
Customer Extensions
Command Extensions
Model Validators
Gesture Extensions Work Item Link Extensions
Custom UML ProfilesCustom Toolbox Item
Extension PointsContext Menu Extensions
Add new menu items to the context menus of our designers
Gesture ExtensionsAdd new mouse gesture handlers for designers
Validation ExtensionsCreate custom domain validation methods for models
Work Item Link ExtensionPerform actions when model elements are linked to TFS Work Items
Custom UML ProfilesAdd new properties or identifiers to UML elements
Custom Toolbox ItemsA customized element or set of element that can be easily reused across models
Creating a MEF Extension
DEMO
Creating a MEF ExtensionDemo summary
Creating an extension projectUsing MEF Exports and ImportsCreating a command extensionCreating and displaying new model elementsCreating a Work Item Link Extension
Creating a UML Profile
DEMO
Creating a UML ProfileDemo summary
How custom profiles workCreating the profile.xml fileCreating new UML StereotypesCreating a VSIX package
Creating a custom Toolbox Item
DEMO
Creating a custom Toolbox ItemDemo summary
How custom toolbox items workCreating the template diagramInstalling the template for testingCreating a VSIX Package
But I want more!Simple things are simple, complex things are still possible
VS Packages for rich IDE integrationDSL and ModelBus for complex intra-model capabilities
Code generation using T4Roll your own, forward or backwardUse the Visualization and Modeling Feature Pack capabilities
Layer Diagram ExtensibilityIncluded in the Visualization and Modeling Feature PackGives all three MEF-based extension points for Layer
Download the Visual Studio 2010 Visualization and Modeling Feature
Pack NOW!
Related BlogsCameron Skinner
http://blogs.msdn.com/cameronsSteve Cook
http://blogs.msdn.com/stevecookPeter Provost
http://www.peterprovost.org/blog/Jean-Marc Prieur
http://blogs.msdn.com/jmprieurMark Groves
http://blogs.msdn.com/mgroves/
Breakout Sessions
DEV402 Cool Visualizations using DGML
DEV310 Improving Software Quality with Microsoft Visual Studio Advanced Diagnostics, IntelliTrace™ and Test Automation
DEV306 Extending the Microsoft Visual Studio 2010 Code Editor to Visualize Runtime Intelligence Data
Related Content
Interactive Sessions
DEV08-INT Using Microsoft Visual Studio 2010 to Understand Your Applications
Track ResourcesVisual Studio – http://www.microsoft.com/visualstudio/en-us/Soma’s Blog – http://blogs.msdn.com/b/somasegar/ MSDN Data Developer Center – http://msdn.com/data ADO.NET Team Blog – http://blogs.msdn.com/adonet WCF Data Services Team Blog – http://blogs.msdn.com/astoriateam EF Design Blog – http://blogs.msdn.com/efdesign
Resources
www.microsoft.com/teched
Sessions On-Demand & Community Microsoft Certification & Training Resources
Resources for IT Professionals Resources for Developers
www.microsoft.com/learning
http://microsoft.com/technet http://microsoft.com/msdn
Learning
Complete an evaluation on CommNet and enter to win!
Sign up for Tech·Ed 2011 and save $500 starting June 8 – June 31st
http://northamerica.msteched.com/registration
You can also register at the
North America 2011 kiosk located at registrationJoin us in Atlanta next year
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to
be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
JUNE 7-10, 2010 | NEW ORLEANS, LA