The Visual Studio .NET IDE Customization and Enhancements Chapter 6 - Pumping up the IDE Coder To Developer - Mike Gunderloy Respected Professor: Dr. James Fawcett Presented By: Ghanashyam N
Pumping Up The IDE In order to be useful to a developer an IDE must have the following characteristics Support for Customization Developers must be able to define their own shortcuts and choose their own window layouts and keyboard settings It must be possible to automate repetitive tasks Support for Extensibility Developers must be able to use third-party tools to achieve functionality that is not present (by default) in the IDE
Pumping Up VS .NET This presentation will focus on the following topics Customizing VS .NET Using VS.NET Macros Using VS.NET Add-Ins
Customizing VS .NET Using Profiles (My Profiles tab on Help ►Show Start Page) Enables selection of a group of settings for Keyboard Scheme Window Layout Help Filtering Startup Options
Customizing VS .NET Setting VS .NET Options (Tools ►Options) Environment ►General Increase number of items on most recently used list
Customizing VS .NET Setting VS .NET Options (Tools ►Options) Environment ►Documents Get rid of “Are you sure?” prompts
Customizing VS .NET Setting VS .NET Options (Tools ►Options) Environment ►Fonts and Colors Use developer- friendly fonts (e.g. ProFont, Sheldon)
Customizing VS .NET Setting VS .NET Options (Tools ►Options) Environment ►Task List Use your own comment tags to put items In the Task List
Customizing VS .NET Setting VS .NET Options (Tools ►Options) Text Editor ►C# ► General Show line numbering in editor window
Customizing VS .NET Setting VS .NET Options (Tools ►Options) Text Editor ►C# ► Tabs Set tab size and indent width
Customizing VS .NET Setting VS .NET Options (Tools ►Options) Database Tools ►Server Explorer Increase login timeout for WAN or Internet based access
Customizing VS .NET Some More Tips Developer fonts - ProFont and Sheldon are available for download at http://www.tobias-jung.de/seekingprofont/ For even more customization possibilities try VS .NET PowerToys available at http://www.gotdotnet.com/team/ide/ Explore Tools ►Options for several more useful options
Using VS .NET Macros Increase productivity by using Macros to avoid repetitive work A macro is a series of actions saved in a scripting language VS .NET includes A Macro recorder and playback facility A Macro editor Keyboard bindings for Macros An object model to let Macros work with the IDE
Using VS .NET Macros Macro Recorder (Tools ►Macros ►Record Temporary Macro) (Ctrl + Shift + R) Macro Playback (Tools ►Macros ►Run Temporary Macro) (Ctrl + Shift + P) Macro Explorer (View ►Other Windows ►Macro Explorer) Provides a project abstraction for Macros Supports editing and saving of Macros and Macro projects Setting Macro Keyboard Shortcuts (Tools ►Options ►Environment ►Keyboard)
Using VS .NET Add-Ins The VS .NET IDE was designed to be extensible and many utility vendors have taken advantage of this extensibility by developing Add-Ins that plug into it VS .NET uses an object model called the DTE (Design-Time Environment) object model to support Macros as well as Add-Ins [For further details see - Inside Microsoft Visual Studio .NET - Brian Johnson, Craig Skibo, and Marc Young] Add-Ins can make the IDE more productive, and often help in analyzing and improving the quality of code that you write
Useful VS .NET Add-Ins Project Line Counter (WndTabs) http://www.wndtabs.com/plc/ Useful little Add-In for counting SLOC (Source Lines of Code)
Useful VS .NET Add-Ins QuickJump .NET http://www.codeproject.com/dotnet/quickjump_net.asp VS .NET already supports incremental search (Ctrl + I) mode, class view and dropdown class and member lists for easy navigation QuickJump is an Add-In that simplifies source code navigation in a different way Alt + G gives a window showing a list of members in the current class which can be used for navigation Provides a search and filtering mechanism to simplify navigation
More VS .NET Add-Ins Total .NET Analyzer (FMS) CodeWright for VS .NET http://www.fmsinc.com/dotnet/Analyzer Code analyzer for .NET that warns regarding deviations from best practices and likely errors CodeWright for VS .NET http://www.codewright.com/cwnet/default.asp Replaces VS .NET’s editor with CodeWright’s editor and lets you use CodeWright’s keystrokes and color syntax (amongst other features)
More VS .NET Add-Ins IBM Rational XDE Developer .NET DevPartner Studio http://www.ibm.com/developerworks/rational/products/xde/ Add-In that supports modeling through UML and also supports reverse engineering and model-to-code synchronization DevPartner Studio Add-In that provides code coverage analysis along with a rules-driven engine that can be used to locate dangerous parts of code before they break down
Yet More VS .NET Add-Ins http://sharptoolbox.madgeek.com/ A definitive list of VS .NET Add-Ins and other .NET utilities is available at http://sharptoolbox.madgeek.com/
Add-In Hell Having too many Add-Ins installed can slow down the IDE and affect system performance Too many Add-Ins can cause shortcut key conflicts between individual Add-Ins It is a good practice to uninstall Add-Ins that you no longer use
Thank You