Extend Visual Studio 2010

Preview:

DESCRIPTION

Customizing Visual Studio has never been easier and is often overlooked as a potential development time-saver! Visual Studio supports a number of quick ways to extend without any code and when task gets tougher the addition of Managed Extensibility Framework (MEF) and the new VSIX packaging model allows code based solutions to be easily developed! Come to this demo-heavy session to see how you can take advantage of the different forms of extensibility and use them to improve your Visual Studio experience.

Citation preview

Extend Visual Studio 2010Presented by Robert MacLean @rmaclean

Assumptions of this talk

Level 200Assume you have used VSAssume you are a developer

Agenda

What extending means? Where it goes beyond configuration!

Start at level 100Snippets (little demo) & Templates (little demo)

Move to level 200MEF (little demo)

Finish off in level 300ishExtensions (big demo)Add-ins (little demo)

Not covered today

Diagram & Arch extensionsRequires UltimateUML - Just XML additionsArch tools - MEF

Problem

Often typing the same code over and over againComplex patterns hard to remember

Demo

Snippets: How to use and how they work

Shortcut fail

Snippet Summary

Simple reusable chunks of codeSnippet manager for sharing Designer exists

Problem

Often typing the same code over and over againSet up on new work is time consumingI wish everyone on my team did things correctly from the startComplex patterns hard to remember

Demo

Project Templates

Template Summary

Easy to build solutions to save some timeSimple, too simple, deployment modelMicrosoft extension for making VSIX easilyVERY extensible with the wizard interface

Problem

Need a way to loosely couple together components at runtime

Demo

Managed Extensibility Framework

MEF Summary

Way to compose parts, like plugins or addinsPARTS of Visual Studio support this

Problem

Need to enhance the Visual Studio IDESyntax highlighting for my new languageWant to do some visual cues to improve productivity

Extension Class Structure

Provider

Tells Visual Studio that this exists and what it is for (classifier)

Definition

Tells Visual Studio that we creating a custom definition

Formatter

How would we like our code to be formatted

Classifier

Tells Visual Studio what text this applies to

Demo

Visual Studio Extensions

Extensions Summary

Awesome for rich experiencesEasy to build – just need to navigate the complex documentationLimited scopeTHIS is the growth point for VS 11

Problem

Need to enhance the Visual Studio IDE beyond extensionsNeed menu items and/or custom tool windowsNeed my own editor

DemoVisual Studio Add-Ins

Add-ins & Packages Summary

FULL power experienceBetter documented (been around longer)

Summary

No CodeWhat you want likely already exists in the gallery!SnippetsTemplates

CodeExtensions powered by MEFAdd-ins are full power

Thank YOU!

Robert MacLeanwww.sadev.co.za (slides + demo scripts)@rmaclean

Recommended