Extending Visual Studio - PowerPoint PPT Presentation

1 / 19
About This Presentation
Title:

Extending Visual Studio

Description:

... be written in any .NET language. More powerful than macros ... Can't do basic things, like get mouse & paint events. http://msdn.microsoft.com/vstudio/extend ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 20
Provided by: erikr157
Category:

less

Transcript and Presenter's Notes

Title: Extending Visual Studio


1
 Extending Visual Studio
Uitbreidingen voor Visual Studio
  • Mark Miller
  • Developer Express
  • markm_at_devexpress.com

2
About Mark Miller
Great UI
Refactoring
Chief Architect, IDE Tools Developer Express
Plug-in Architectures
Design Patterns
Developer Tools
Writing Code
1980
1990
2000
Today
  • Design priorities
  • Great architecture
  • Great user experience
  • Simplicity, especially in client code
  • Products
  • DXCore
  • CodeRush
  • Refactor!

3
Ways to Extend VS
  • Macros
  • Automation Model
  • VSIP
  • DXCore

4
Macros
  • Advantages
  • Easy access (if youre a VB programmer)
  • Record/Playback
  • Great for learning how to access extensibility
    model
  • Disadvantages
  • Long load time if VB language service isnt
    loaded yet.

5
Automation Model
  • Advantages
  • Wizards to get you started
  • Can be written in any .NET language
  • More powerful than macros
  • Disadvantages
  • Must be compiled
  • Limited power
  • Some classes have poor performance
  • Some methods are not thread-safe

6
VSIP
  • Advantages
  • Powerful
  • Low-level
  • Disadvantages
  • Steep learning curve
  • C knowledge required to exploit everything
  • Managed interop assemblies are tied to VS
    versions
  • Cant do basic things, like get mouse paint
    events

http//msdn.microsoft.com/vstudio/extend
7
DXCore
  • Nearly as powerful as VSIP
  • Easier than a VS Add-in
  • Fewer lines of code
  • Smarter event arguments
  • Powerful methods and properties
  • Able to extend Visual Studio like no other
  • Exclusive Flicker-free painting on the editor
  • Exclusive Mouse events
  • Exclusive Keyboard events
  • Component-centric architecture
  • Plug-in binaries work in VS02, VS03 and VS05

http//www.devexpress.com/DXCore
8
Accessibility vs. Power
Accessibility
Power
9
DXCore Architectural Overview
DXCore
Visual Studio
10
DXCore Architectural Overview
DXCore
Visual Studio
11
DXCore Architectural Overview
DXCore
Visual Studio
12
DXCore Architectural Overview
  • Perform a function
  • Can be registered with VS
  • Can be bound to a shortcut

The DXCore Manages
Actions
Text Expansion
Shortcuts
Events
Options
Context
Discoverability
Source Model
Visual Studio
13
DXCore Architectural Overview
  • Bound to Actions
  • Keyboard or mouse
  • Associated context

The DXCore Manages
Actions
Text Expansion
Shortcuts
Events
Options
Context
Discoverability
Source Model
Visual Studio
14
DXCore Architectural Overview
The DXCore Manages
  • Resolves feature availability
  • Resolves ambiguity
  • Finegrained precise
  • Extensible

Actions
Text Expansion
Shortcuts
Events
Options
Context
Discoverability
Source Model
Visual Studio
15
DXCore Architectural Overview
The DXCore Manages
  • Provides detailed parse tree
  • Decouples feature from language
  • C, VB, and C fully supported
  • Full trees for XML Doc Comments
  • HTML/XML, SQL soon

Actions
Text Expansion
Shortcuts
Events
Options
Context
Discoverability
Source Model
Visual Studio
16
DXCore Architectural Overview
  • Insert, delete, or change text
  • Position caret
  • Select text
  • Sophisticated text manipulation

The DXCore Manages
Actions
Text Expansion
Shortcuts
Events
Options
Context
Discoverability
Source Model
Visual Studio
17
DXCore Architectural Overview
  • VS IDE events are available here
  • Adds important new events
  • Sophisticated EventArg descendants

The DXCore Manages
Actions
Text Expansion
Shortcuts
Events
Options
Context
Discoverability
Source Model
Visual Studio
18
DXCore Architectural Overview
The DXCore Manages
  • Decoupled options architecture
  • Integrated options page
  • Storage handled automatically

Actions
Text Expansion
Shortcuts
Events
Options
Context
Discoverability
Source Model
Visual Studio
19
DXCore Architectural Overview
The DXCore Manages
Actions
Text Expansion
  • Integrated User Guide
  • Dynamically-generated assistance
  • Hinting services

Shortcuts
Events
Options
Context
Discoverability
Source Model
Visual Studio
Write a Comment
User Comments (0)
About PowerShow.com