SlideShare a Scribd company logo
Extend Visual Studio 2010 Presented by Robert MacLean  @rmaclean
Assumptions of this talk Level 200 Assume you have used VS Assume you are a developer
Agenda What extending means?  Where it goes beyond configuration! Start at level 100 Snippets (little demo) & Templates (little demo)  Move to level 200 MEF (little demo) Finish off in level 300ish Extensions (big demo) Add-ins (little demo)
Not covered today Diagram & Arch extensions Requires Ultimate UML - Just XML additions Arch tools - MEF
Problem Often typing the same code over and over again Complex patterns hard to remember
Demo Snippets: How to use and how they work Shortcut fail
Snippet Summary Simple reusable chunks of code Snippet manager for sharing  Designer exists
Problem Often typing the same code over and over again Set up on new work is time consuming I wish everyone on my team did things correctly from the start Complex patterns hard to remember
Demo Project Templates
Template Summary Easy to build solutions to save some time Simple, too simple, deployment model Microsoft extension for making VSIX easily VERY extensible with the wizard interface
VSIX Summary What it can’t do: Write to registry Add to GAC Prompt user Party trick: Integrated Visual Studio Gallery Experience Other deployment options: Executable formats (msi/exe)
Problem Need a way to loosely couple together components at runtime
Demo Managed Extensibility Framework
MEF Summary Way to compose parts, like plugins or addins PARTS of Visual Studio support this
Problem Need to enhance the Visual Studio IDE Syntax highlighting for my new language Want to do some visual cues to improve productivity
Extension Class Structure Definition Tells Visual Studio that we creating a custom definition Provider Tells Visual Studio that this exists and what it is for (classifier) 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 experiences Easy to build – just need to navigate the complex documentation Limited scope THIS is the growth point for VS 11
Problem Need to enhance the Visual Studio IDE beyond extensions Need menu items and/or custom tool windows Need my own editor
Demo Visual Studio Add-Ins
Add-ins & Packages Summary FULL power experience Better documented (been around longer)
Summary No Code What you want likely already exists in the gallery! Snippets Templates Code Extensions powered by MEF Add-ins are full power

More Related Content

What's hot

Modular enablement
Modular enablementModular enablement
Modular enablement
Ori Pomerantz
 
Liquid Sky
Liquid SkyLiquid Sky
Liquid Sky
cboss1008
 
Liquid Sky
Liquid SkyLiquid Sky
Liquid Sky
guest9b417a
 
Fail to Rise - Automation & DevOps Stories
Fail to Rise - Automation & DevOps StoriesFail to Rise - Automation & DevOps Stories
Fail to Rise - Automation & DevOps Stories
Soumya Mukherjee
 
Premire elemnts
Premire elemntsPremire elemnts
Premire elemnts
lewisgray111246
 
Gold Confetti
Gold ConfettiGold Confetti
Gold Confetti
cboss1008
 
Incandescent
IncandescentIncandescent
Incandescent
cboss1008
 
Final Cut Pro X
Final Cut Pro X Final Cut Pro X
Final Cut Pro X
BBRCMedia
 
Articulate suite vs_captivate_jen_smith
Articulate suite vs_captivate_jen_smithArticulate suite vs_captivate_jen_smith
Articulate suite vs_captivate_jen_smith
jensmith2426
 
Mule soft debugprogram
Mule soft debugprogramMule soft debugprogram
Mule soft debugprogram
abhipokharna
 
Adobe Air Application case study - nycoders.org 0509
Adobe Air Application case study - nycoders.org 0509Adobe Air Application case study - nycoders.org 0509
Adobe Air Application case study - nycoders.org 0509
Andrew Hunt
 
Sun Rays
Sun RaysSun Rays
Sun Rays
cboss1008
 
Fluent integration-tests
Fluent integration-testsFluent integration-tests
Fluent integration-tests
Matthias Hryniszak
 
Dots Rotate
Dots RotateDots Rotate
Dots Rotate
cboss1008
 
Selenium test automation framework design & development
Selenium test automation framework design & developmentSelenium test automation framework design & development
Selenium test automation framework design & development
Kushan Shalindra Amarasiri - Technical QE Specialist
 
Col 270 project 1 - tips on how to realize an effective narrative
Col 270   project 1 - tips on how to realize an effective narrativeCol 270   project 1 - tips on how to realize an effective narrative
Col 270 project 1 - tips on how to realize an effective narrative
Jim (James) Buckingham
 
Professional PHP: an open-source alternative for enterprise development [Antw...
Professional PHP: an open-source alternative for enterprise development [Antw...Professional PHP: an open-source alternative for enterprise development [Antw...
Professional PHP: an open-source alternative for enterprise development [Antw...
Combell NV
 
California Sunset
California SunsetCalifornia Sunset
California Sunset
cboss1008
 

What's hot (18)

Modular enablement
Modular enablementModular enablement
Modular enablement
 
Liquid Sky
Liquid SkyLiquid Sky
Liquid Sky
 
Liquid Sky
Liquid SkyLiquid Sky
Liquid Sky
 
Fail to Rise - Automation & DevOps Stories
Fail to Rise - Automation & DevOps StoriesFail to Rise - Automation & DevOps Stories
Fail to Rise - Automation & DevOps Stories
 
Premire elemnts
Premire elemntsPremire elemnts
Premire elemnts
 
Gold Confetti
Gold ConfettiGold Confetti
Gold Confetti
 
Incandescent
IncandescentIncandescent
Incandescent
 
Final Cut Pro X
Final Cut Pro X Final Cut Pro X
Final Cut Pro X
 
Articulate suite vs_captivate_jen_smith
Articulate suite vs_captivate_jen_smithArticulate suite vs_captivate_jen_smith
Articulate suite vs_captivate_jen_smith
 
Mule soft debugprogram
Mule soft debugprogramMule soft debugprogram
Mule soft debugprogram
 
Adobe Air Application case study - nycoders.org 0509
Adobe Air Application case study - nycoders.org 0509Adobe Air Application case study - nycoders.org 0509
Adobe Air Application case study - nycoders.org 0509
 
Sun Rays
Sun RaysSun Rays
Sun Rays
 
Fluent integration-tests
Fluent integration-testsFluent integration-tests
Fluent integration-tests
 
Dots Rotate
Dots RotateDots Rotate
Dots Rotate
 
Selenium test automation framework design & development
Selenium test automation framework design & developmentSelenium test automation framework design & development
Selenium test automation framework design & development
 
Col 270 project 1 - tips on how to realize an effective narrative
Col 270   project 1 - tips on how to realize an effective narrativeCol 270   project 1 - tips on how to realize an effective narrative
Col 270 project 1 - tips on how to realize an effective narrative
 
Professional PHP: an open-source alternative for enterprise development [Antw...
Professional PHP: an open-source alternative for enterprise development [Antw...Professional PHP: an open-source alternative for enterprise development [Antw...
Professional PHP: an open-source alternative for enterprise development [Antw...
 
California Sunset
California SunsetCalifornia Sunset
California Sunset
 

Viewers also liked

Power features in .NET 4: Investigating the features of .NET 4 which you don’...
Power features in .NET 4: Investigating the features of .NET 4 which you don’...Power features in .NET 4: Investigating the features of .NET 4 which you don’...
Power features in .NET 4: Investigating the features of .NET 4 which you don’...
Robert MacLean
 
Windows 8 & JavaScript
Windows 8 & JavaScriptWindows 8 & JavaScript
Windows 8 & JavaScript
Robert MacLean
 
Windows Azure Platform Overview
Windows Azure Platform OverviewWindows Azure Platform Overview
Windows Azure Platform Overview
Robert MacLean
 
What’s new in LightSwitch 2013?
What’s new in LightSwitch 2013?What’s new in LightSwitch 2013?
What’s new in LightSwitch 2013?
Robert MacLean
 
Codename: Roslyn
Codename: RoslynCodename: Roslyn
Codename: Roslyn
Robert MacLean
 
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
Robert MacLean
 
BDD
BDDBDD
Estructura pag 2
Estructura pag 2Estructura pag 2
Estructura pag 2
julian_vargas
 
El ciberassetjament (reflexionem-hi)
El ciberassetjament (reflexionem-hi)El ciberassetjament (reflexionem-hi)
El ciberassetjament (reflexionem-hi)
Reflexionem-hi
 
Emeralds
EmeraldsEmeralds
Emeralds
valentinabobo
 
Mindmapping pour l'entreprise
Mindmapping pour l'entrepriseMindmapping pour l'entreprise
Mindmapping pour l'entreprise
benextbelgium
 
Sexualidad y reproducción humana
Sexualidad y reproducción humanaSexualidad y reproducción humana
Sexualidad y reproducción humana
Blanca' Ramos
 
Lacerillera
LacerilleraLacerillera
Lacerillera
Marcela Medina
 
el Internet y las relaciones sociales
el Internet y las relaciones sociales el Internet y las relaciones sociales
el Internet y las relaciones sociales
Yacila24
 
Elia (januari)
Elia (januari)Elia (januari)
Elia (januari)
eliamustikadewi
 
Presentation1
Presentation1Presentation1
Presentation1
Rizki Arfan
 
Fotografia nombres i operacions
Fotografia  nombres i operacionsFotografia  nombres i operacions
Fotografia nombres i operacions
Kalaura
 

Viewers also liked (20)

Power features in .NET 4: Investigating the features of .NET 4 which you don’...
Power features in .NET 4: Investigating the features of .NET 4 which you don’...Power features in .NET 4: Investigating the features of .NET 4 which you don’...
Power features in .NET 4: Investigating the features of .NET 4 which you don’...
 
Windows 8 & JavaScript
Windows 8 & JavaScriptWindows 8 & JavaScript
Windows 8 & JavaScript
 
Windows Azure Platform Overview
Windows Azure Platform OverviewWindows Azure Platform Overview
Windows Azure Platform Overview
 
What’s new in LightSwitch 2013?
What’s new in LightSwitch 2013?What’s new in LightSwitch 2013?
What’s new in LightSwitch 2013?
 
Codename: Roslyn
Codename: RoslynCodename: Roslyn
Codename: Roslyn
 
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
 
BDD
BDDBDD
BDD
 
Estructura pag 2
Estructura pag 2Estructura pag 2
Estructura pag 2
 
El ciberassetjament (reflexionem-hi)
El ciberassetjament (reflexionem-hi)El ciberassetjament (reflexionem-hi)
El ciberassetjament (reflexionem-hi)
 
Emeralds
EmeraldsEmeralds
Emeralds
 
Mindmapping pour l'entreprise
Mindmapping pour l'entrepriseMindmapping pour l'entreprise
Mindmapping pour l'entreprise
 
Test
TestTest
Test
 
Sexualidad y reproducción humana
Sexualidad y reproducción humanaSexualidad y reproducción humana
Sexualidad y reproducción humana
 
Lacerillera
LacerilleraLacerillera
Lacerillera
 
el Internet y las relaciones sociales
el Internet y las relaciones sociales el Internet y las relaciones sociales
el Internet y las relaciones sociales
 
M1pembiakan seks
M1pembiakan seksM1pembiakan seks
M1pembiakan seks
 
Elia (januari)
Elia (januari)Elia (januari)
Elia (januari)
 
1
11
1
 
Presentation1
Presentation1Presentation1
Presentation1
 
Fotografia nombres i operacions
Fotografia  nombres i operacionsFotografia  nombres i operacions
Fotografia nombres i operacions
 

Similar to Extend Visual Studio 2010

Software Evaluation - Stephanie Arehart
Software Evaluation - Stephanie ArehartSoftware Evaluation - Stephanie Arehart
Software Evaluation - Stephanie Arehart
Stephanie Arehart
 
Increasing productivity using visual studio 2017
Increasing productivity using visual studio 2017Increasing productivity using visual studio 2017
Increasing productivity using visual studio 2017
Md. Mahedee Hasan
 
Whats new in visual studio 2017
Whats new in visual studio 2017Whats new in visual studio 2017
Whats new in visual studio 2017
Md. Mahedee Hasan
 
Zend_Layout & Zend_View Enhancements
Zend_Layout & Zend_View EnhancementsZend_Layout & Zend_View Enhancements
Zend_Layout & Zend_View Enhancements
Ralph Schindler
 
Joomla Day India 2009 Business Logic With The Mvc
Joomla Day India 2009   Business Logic With The MvcJoomla Day India 2009   Business Logic With The Mvc
Joomla Day India 2009 Business Logic With The Mvc
Amit Kumar Singh
 
San Diego ASP.NET Meeting Oct 21st
San  Diego  ASP.NET Meeting Oct 21stSan  Diego  ASP.NET Meeting Oct 21st
San Diego ASP.NET Meeting Oct 21st
Woody Pewitt
 
Automated Builds And UI Testing in SharePoint 2010 Development
Automated Builds And UI Testing in SharePoint 2010 DevelopmentAutomated Builds And UI Testing in SharePoint 2010 Development
Automated Builds And UI Testing in SharePoint 2010 Development
Chris O'Brien
 
Improving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingImproving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester Training
Anna Russo
 
High-Speed Development with the AJAX Control Toolkit
High-Speed Development with the AJAX Control ToolkitHigh-Speed Development with the AJAX Control Toolkit
High-Speed Development with the AJAX Control Toolkit
goodfriday
 
Team foundation server
Team foundation serverTeam foundation server
Team foundation server
Leo Mark Villar
 
Plug yourself in and your app will never be the same (1 hr edition)
Plug yourself in and your app will never be the same (1 hr edition)Plug yourself in and your app will never be the same (1 hr edition)
Plug yourself in and your app will never be the same (1 hr edition)
Mikkel Flindt Heisterberg
 
SBTUG 28 May 2008 Microsoft 2008 Stack
SBTUG 28 May 2008 Microsoft 2008 StackSBTUG 28 May 2008 Microsoft 2008 Stack
SBTUG 28 May 2008 Microsoft 2008 Stack
Craig Bailey
 
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
Antonio Chagoury
 
What's New in Visual Studio 2010
What's New in Visual Studio 2010What's New in Visual Studio 2010
What's New in Visual Studio 2010
Adil Mughal
 
Visual Studio 2012 introduction
Visual Studio  2012 introductionVisual Studio  2012 introduction
Visual Studio 2012 introduction
Nicko Satria Consulting
 
Meet Windows PowerShell
Meet Windows PowerShellMeet Windows PowerShell
Meet Windows PowerShell
Concentrated Technology
 
STSADM Automating SharePoint Administration - Tech Ed South East Asia 2008 wi...
STSADM Automating SharePoint Administration - Tech Ed South East Asia 2008 wi...STSADM Automating SharePoint Administration - Tech Ed South East Asia 2008 wi...
STSADM Automating SharePoint Administration - Tech Ed South East Asia 2008 wi...
Joel Oleson
 
Ncrafts.io - Refactor your software architecture
Ncrafts.io - Refactor your software architectureNcrafts.io - Refactor your software architecture
Ncrafts.io - Refactor your software architecture
Julien Lavigne du Cadet
 
Camtasia
CamtasiaCamtasia
Camtasia
Rob Bourne
 
Dev340 Thake Coates
Dev340 Thake CoatesDev340 Thake Coates
Dev340 Thake Coates
Andrew Coates
 

Similar to Extend Visual Studio 2010 (20)

Software Evaluation - Stephanie Arehart
Software Evaluation - Stephanie ArehartSoftware Evaluation - Stephanie Arehart
Software Evaluation - Stephanie Arehart
 
Increasing productivity using visual studio 2017
Increasing productivity using visual studio 2017Increasing productivity using visual studio 2017
Increasing productivity using visual studio 2017
 
Whats new in visual studio 2017
Whats new in visual studio 2017Whats new in visual studio 2017
Whats new in visual studio 2017
 
Zend_Layout & Zend_View Enhancements
Zend_Layout & Zend_View EnhancementsZend_Layout & Zend_View Enhancements
Zend_Layout & Zend_View Enhancements
 
Joomla Day India 2009 Business Logic With The Mvc
Joomla Day India 2009   Business Logic With The MvcJoomla Day India 2009   Business Logic With The Mvc
Joomla Day India 2009 Business Logic With The Mvc
 
San Diego ASP.NET Meeting Oct 21st
San  Diego  ASP.NET Meeting Oct 21stSan  Diego  ASP.NET Meeting Oct 21st
San Diego ASP.NET Meeting Oct 21st
 
Automated Builds And UI Testing in SharePoint 2010 Development
Automated Builds And UI Testing in SharePoint 2010 DevelopmentAutomated Builds And UI Testing in SharePoint 2010 Development
Automated Builds And UI Testing in SharePoint 2010 Development
 
Improving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingImproving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester Training
 
High-Speed Development with the AJAX Control Toolkit
High-Speed Development with the AJAX Control ToolkitHigh-Speed Development with the AJAX Control Toolkit
High-Speed Development with the AJAX Control Toolkit
 
Team foundation server
Team foundation serverTeam foundation server
Team foundation server
 
Plug yourself in and your app will never be the same (1 hr edition)
Plug yourself in and your app will never be the same (1 hr edition)Plug yourself in and your app will never be the same (1 hr edition)
Plug yourself in and your app will never be the same (1 hr edition)
 
SBTUG 28 May 2008 Microsoft 2008 Stack
SBTUG 28 May 2008 Microsoft 2008 StackSBTUG 28 May 2008 Microsoft 2008 Stack
SBTUG 28 May 2008 Microsoft 2008 Stack
 
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
 
What's New in Visual Studio 2010
What's New in Visual Studio 2010What's New in Visual Studio 2010
What's New in Visual Studio 2010
 
Visual Studio 2012 introduction
Visual Studio  2012 introductionVisual Studio  2012 introduction
Visual Studio 2012 introduction
 
Meet Windows PowerShell
Meet Windows PowerShellMeet Windows PowerShell
Meet Windows PowerShell
 
STSADM Automating SharePoint Administration - Tech Ed South East Asia 2008 wi...
STSADM Automating SharePoint Administration - Tech Ed South East Asia 2008 wi...STSADM Automating SharePoint Administration - Tech Ed South East Asia 2008 wi...
STSADM Automating SharePoint Administration - Tech Ed South East Asia 2008 wi...
 
Ncrafts.io - Refactor your software architecture
Ncrafts.io - Refactor your software architectureNcrafts.io - Refactor your software architecture
Ncrafts.io - Refactor your software architecture
 
Camtasia
CamtasiaCamtasia
Camtasia
 
Dev340 Thake Coates
Dev340 Thake CoatesDev340 Thake Coates
Dev340 Thake Coates
 

More from Robert MacLean

14 things you need to be a successful software developer (v3)
14 things you need to be a successful software developer (v3)14 things you need to be a successful software developer (v3)
14 things you need to be a successful software developer (v3)
Robert MacLean
 
Git
GitGit
OWASP TOP 10
OWASP TOP 10OWASP TOP 10
OWASP TOP 10
Robert MacLean
 
Building a µservice with Kotlin, Micronaut & GCP
Building a µservice with Kotlin, Micronaut & GCPBuilding a µservice with Kotlin, Micronaut & GCP
Building a µservice with Kotlin, Micronaut & GCP
Robert MacLean
 
Looking at the Vue
Looking at the VueLooking at the Vue
Looking at the Vue
Robert MacLean
 
Kotlin 101
Kotlin 101Kotlin 101
Kotlin 101
Robert MacLean
 
Features of Kotlin I find exciting
Features of Kotlin I find excitingFeatures of Kotlin I find exciting
Features of Kotlin I find exciting
Robert MacLean
 
JavaScript Gotchas
JavaScript GotchasJavaScript Gotchas
JavaScript Gotchas
Robert MacLean
 
DevConf Survival Guide
DevConf Survival GuideDevConf Survival Guide
DevConf Survival Guide
Robert MacLean
 
The state of testing @ Microsoft
The state of testing @ MicrosoftThe state of testing @ Microsoft
The state of testing @ Microsoft
Robert MacLean
 
Visual Studio ❤ JavaScript
Visual Studio ❤ JavaScriptVisual Studio ❤ JavaScript
Visual Studio ❤ JavaScript
Robert MacLean
 
What is new in C# 6?
What is new in C# 6?What is new in C# 6?
What is new in C# 6?
Robert MacLean
 
Putting the DOT in .NET - Dev/Ops/Test
Putting the DOT in .NET - Dev/Ops/TestPutting the DOT in .NET - Dev/Ops/Test
Putting the DOT in .NET - Dev/Ops/Test
Robert MacLean
 
A Developer Day 2014 - Durban
A Developer Day 2014 - Durban A Developer Day 2014 - Durban
A Developer Day 2014 - Durban
Robert MacLean
 
Agile lessons learned in the Microsoft ALM Rangers
Agile lessons learned in the Microsoft ALM RangersAgile lessons learned in the Microsoft ALM Rangers
Agile lessons learned in the Microsoft ALM Rangers
Robert MacLean
 
Hour of code - Train the trainer
Hour of code - Train the trainerHour of code - Train the trainer
Hour of code - Train the trainer
Robert MacLean
 
Building services for apps on a shoestring budget
Building services for apps on a shoestring budgetBuilding services for apps on a shoestring budget
Building services for apps on a shoestring budget
Robert MacLean
 
3 things your app API is doing WRONG
3 things your app API is doing WRONG3 things your app API is doing WRONG
3 things your app API is doing WRONG
Robert MacLean
 
ASP.NET
ASP.NETASP.NET
LightSwitch
LightSwitchLightSwitch
LightSwitch
Robert MacLean
 

More from Robert MacLean (20)

14 things you need to be a successful software developer (v3)
14 things you need to be a successful software developer (v3)14 things you need to be a successful software developer (v3)
14 things you need to be a successful software developer (v3)
 
Git
GitGit
Git
 
OWASP TOP 10
OWASP TOP 10OWASP TOP 10
OWASP TOP 10
 
Building a µservice with Kotlin, Micronaut & GCP
Building a µservice with Kotlin, Micronaut & GCPBuilding a µservice with Kotlin, Micronaut & GCP
Building a µservice with Kotlin, Micronaut & GCP
 
Looking at the Vue
Looking at the VueLooking at the Vue
Looking at the Vue
 
Kotlin 101
Kotlin 101Kotlin 101
Kotlin 101
 
Features of Kotlin I find exciting
Features of Kotlin I find excitingFeatures of Kotlin I find exciting
Features of Kotlin I find exciting
 
JavaScript Gotchas
JavaScript GotchasJavaScript Gotchas
JavaScript Gotchas
 
DevConf Survival Guide
DevConf Survival GuideDevConf Survival Guide
DevConf Survival Guide
 
The state of testing @ Microsoft
The state of testing @ MicrosoftThe state of testing @ Microsoft
The state of testing @ Microsoft
 
Visual Studio ❤ JavaScript
Visual Studio ❤ JavaScriptVisual Studio ❤ JavaScript
Visual Studio ❤ JavaScript
 
What is new in C# 6?
What is new in C# 6?What is new in C# 6?
What is new in C# 6?
 
Putting the DOT in .NET - Dev/Ops/Test
Putting the DOT in .NET - Dev/Ops/TestPutting the DOT in .NET - Dev/Ops/Test
Putting the DOT in .NET - Dev/Ops/Test
 
A Developer Day 2014 - Durban
A Developer Day 2014 - Durban A Developer Day 2014 - Durban
A Developer Day 2014 - Durban
 
Agile lessons learned in the Microsoft ALM Rangers
Agile lessons learned in the Microsoft ALM RangersAgile lessons learned in the Microsoft ALM Rangers
Agile lessons learned in the Microsoft ALM Rangers
 
Hour of code - Train the trainer
Hour of code - Train the trainerHour of code - Train the trainer
Hour of code - Train the trainer
 
Building services for apps on a shoestring budget
Building services for apps on a shoestring budgetBuilding services for apps on a shoestring budget
Building services for apps on a shoestring budget
 
3 things your app API is doing WRONG
3 things your app API is doing WRONG3 things your app API is doing WRONG
3 things your app API is doing WRONG
 
ASP.NET
ASP.NETASP.NET
ASP.NET
 
LightSwitch
LightSwitchLightSwitch
LightSwitch
 

Recently uploaded

June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
flufftailshop
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
Pravash Chandra Das
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 

Recently uploaded (20)

June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 

Extend Visual Studio 2010

  • 1. Extend Visual Studio 2010 Presented by Robert MacLean  @rmaclean
  • 2. Assumptions of this talk Level 200 Assume you have used VS Assume you are a developer
  • 3. Agenda What extending means? Where it goes beyond configuration! Start at level 100 Snippets (little demo) & Templates (little demo) Move to level 200 MEF (little demo) Finish off in level 300ish Extensions (big demo) Add-ins (little demo)
  • 4. Not covered today Diagram & Arch extensions Requires Ultimate UML - Just XML additions Arch tools - MEF
  • 5. Problem Often typing the same code over and over again Complex patterns hard to remember
  • 6. Demo Snippets: How to use and how they work Shortcut fail
  • 7. Snippet Summary Simple reusable chunks of code Snippet manager for sharing Designer exists
  • 8. Problem Often typing the same code over and over again Set up on new work is time consuming I wish everyone on my team did things correctly from the start Complex patterns hard to remember
  • 10. Template Summary Easy to build solutions to save some time Simple, too simple, deployment model Microsoft extension for making VSIX easily VERY extensible with the wizard interface
  • 11. VSIX Summary What it can’t do: Write to registry Add to GAC Prompt user Party trick: Integrated Visual Studio Gallery Experience Other deployment options: Executable formats (msi/exe)
  • 12. Problem Need a way to loosely couple together components at runtime
  • 14. MEF Summary Way to compose parts, like plugins or addins PARTS of Visual Studio support this
  • 15. Problem Need to enhance the Visual Studio IDE Syntax highlighting for my new language Want to do some visual cues to improve productivity
  • 16. Extension Class Structure Definition Tells Visual Studio that we creating a custom definition Provider Tells Visual Studio that this exists and what it is for (classifier) Formatter How would we like our code to be formatted Classifier Tells Visual Studio what text this applies to
  • 17. Demo Visual Studio Extensions
  • 18. Extensions Summary Awesome for rich experiences Easy to build – just need to navigate the complex documentation Limited scope THIS is the growth point for VS 11
  • 19. Problem Need to enhance the Visual Studio IDE beyond extensions Need menu items and/or custom tool windows Need my own editor
  • 21. Add-ins & Packages Summary FULL power experience Better documented (been around longer)
  • 22. Summary No Code What you want likely already exists in the gallery! Snippets Templates Code Extensions powered by MEF Add-ins are full power
  • 23. Thank YOU! Robert MacLean www.sadev.co.za (slides + demo scripts) @rmaclean

Editor's Notes

  1. 1min
  2. 2min
  3. Snippet ManagerSnippet Designer// 5min
  4. Snippet ManagerSnippet Designer// 5min
  5. Snippet ManagerSnippet Designer// 5min
  6. Snippet ManagerSnippet Designer// 5min
  7. Snippet ManagerSnippet Designer// 5min