240 likes | 470 Views
Microsoft Visual Basic IDE Tips and Tricks. Dustin Campbell Program Manager Microsoft DTL321. Announcing CodeRush Xpress!. FREE add-in for Visual Studio 2008 CodeRush Xpress (for C#) + Refactor ! (for VB) Support for both C# and Visual Basic Several key productivity features:
E N D
Microsoft Visual Basic IDE Tips and Tricks Dustin Campbell Program Manager Microsoft DTL321
Announcing CodeRush Xpress! • FREE add-in for Visual Studio 2008 • CodeRush Xpress (for C#) + Refactor! (for VB) • Support for both C# and Visual Basic • Several key productivity features: • 50+ Refactorings • Duplicate Line • Generate from Using (TDD) • Highlight All References • Increase/Reduce Selection • Smart Clipboard Operations • Quick Symbol Navigation • Quick File Navigation
Refactorings… Flatten Conditional Inline Delegate Introduce Constant Introduce Constant (local) Introduce Local Introduce Local (replace all) Inline Temp Inline With Statement Make Explicit Make Implicit Method to Property Move Declaration Near Reference Move Initialization To Declaration Move Type to File Name Anonymous Method Name Anonymous Type Property to Method(s) Remove Assignments to Parameter Reorder Parameters Remove Unused Parameter Add Block Delimiters Add Parameter Combine Conditionals Compress to Lambda Expression Compress to Ternary Expression Convert to Auto Property Convert to Initializer Create Backing Store Create Overload Create With Statement Decompose Initializer Decompose Parameter Encapsulate Field Encapsulate Field (read only) Expand Lambda Expression Expand Ternary Expression Extract Interface Extract Method Extract Property Extract XML Literal to Resource Replace Temp with Query Reverse Conditional Simplify Expression Split Conditional Split Initialization from Declaration Split Temporary Variable Use String.Format Use StringBuilder Widen Scope Widen Scope (promote constant) Widen Scope (promote to field)
Agenda • Setting Up Visual Studio • Writing Code • Understanding and Navigating Code • Using CodeRush Xpress [05]Visual Studio 2005 [08]Visual Studio 2008 [10] Visual Studio 2010 [+]Third-party add-in [CRX]CodeRush Xpress
demo Setting Up Visual Studio
Setting Up Visual Studio • Visual Basic Development Settings • Streamlines IDE experience • Quick access to commonly used features • Keyboard shortcuts use VB6 as a baseline • Tweaks That I Like to Make [05] • Environment | Keyboard options page • Remove F2 binding for View.ObjectBrowser • Bind F2 to EditorContextMenus.CodeWindow.Rename in the Text Editor context • Rebind Edit.Redo to Ctrl+Y
Setting Up Visual Studio • Tweaks That I Like to Make (Continued) [05] • Projects and Solutions | General options page • Check “show advanced build configurations” • Leave “always show solution” unchecked • Leave “save new projects when created” unchecked • Projects and Solutions | VB Defaults options page • Set Option Strict to “on” • Export your settings to use them again later!
demo Writing Code
Writing Code • IntelliSense in VS 2008 • [08] Keyword IntelliSense • [08] IntelliSense Everywhere (new lines, expressions, etc.) • [08] Prefix filtering • IntelliSense in VS 2010 • [10] Substring and camelCase filtering • [10] Consume-First Mode (Ctrl+Alt+Space)
Writing Code • Code Snippets • [05] ?<TAB> to display snippet UI • [08] Expansion snippets (double-tab) • [08] Hide/show snippet fields • [+] Free Snippet Editor available at http://codeplex.com/SnippetEditor • Error Corrections (Ctrl+.) • [08] Add Imports Error Correction • [10] Generate from Usage • Generate from Usage • Perfect for a “consume-first” style of development • Generate field, method, property, type and constructor
demo Understanding and Navigating Code
Understanding and Navigating Code • [10] Type colorization • [10] Method separator line • [10] Highlight references(Ctrl + Shift + Up, Ctrl + Shift + Down) Color!
Understanding and Navigating Code • [CRX] Quick Navigation • Symbols (Ctrl + Shift + Q) • Files (Ctrl + Alt + F) • Preview results (Ctrl) • [CRX] Structural Highlighting
Understanding and Navigating Code • [10] Navigate To (Ctrl + ,) • Find files, types and members in a solution • Supports VB, C# and C++ out of the box • Allows multiple search terms, substring and camelCase matches • [05] Next and Previous Method(Ctrl + Down, Ctrl + Up) • [+] Source Code Outliner • Helps visualize structure of the active file • http://sourcecodeoutliner.codeplex.com/
Understanding and Navigating Code • [10] Outlining Refresh • Preview a region by hovering over the margin • Double-click the margin to collapse • [10] “Adhoc” Outlining • Select a block of code and collapse it • To add region: Ctrl + M, Ctrl + H • To remove region: Ctrl + M, Ctrl + U • Persisted in the solution options file (*.suo)
demo Using CodeRush Xpress
Using CodeRush Xpress • CodeRush Refactor! key (Ctrl+`) • CamelCase Navigation (Alt + Left, Alt + Right) • Tab to Next Reference (Tab) • http://devexpress.com/crx
Visual Basic Resources • Visual Basic Developer Centerhttp://msdn.com/vbasic • Blogshttp://blogs.msdn.com/vbteam (VB Team)http://blogs.msdn.com/bethmassi (Beth Massi) • CodeRush Xpresshttp://devexpress.com/crx • Visual Basic Forumshttp://social.msdn.microsoft.com/forums/en-us/category/visualbasic • Connecthttps://connect.microsoft.com/VisualStudio
Resources • www.microsoft.com/teched Sessions On-Demand & Community • www.microsoft.com/learning • Microsoft Certification & Training Resources • http://microsoft.com/technet • Resources for IT Professionals • http://microsoft.com/msdn Resources for Developers www.microsoft.com/learning Microsoft Certification and Training Resources
Track Resources Visit the DPR TLC for a chance to win a copy of Visual Studio Team Suite. Daily drawing occurs every day in the TLC at 4:15pm. Stop by for a raffle ticket http://www.microsoft.com/visualstudio http://www.microsoft.com/visualstudio/en-us/products/teamsystem/default.mspx Please visit us in the TLC blue area
© 2009 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.