Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lisa Feigenbaum Microsoft Program Manager Session Code: DEV314.

Similar presentations


Presentation on theme: "Lisa Feigenbaum Microsoft Program Manager Session Code: DEV314."— Presentation transcript:

1

2 Lisa Feigenbaum Microsoft Program Manager http://blogs.msdn.com/lisa Session Code: DEV314

3 Lap Around Visual Basic in VS 2010 Session Objectives Discover what’s available See how to take advantage of new features Agenda New Editor & Shell VB IDE VB Language VS 2010 &.NET 4 Highlights

4 New Editor & Shell WPF User Interface New Look, Rich Experience Start Page Remove or pin projects, View directory, Customize Editor Zoom, Multi-Monitor, Block selection, Outlining Extensibility Visual Studio Gallery, Extension Manager

5 New Editor & Shell Lisa Feigenbaum Program Manager Microsoft

6 “There’s an extension for that!”

7 Code-Focused VB IDE Understanding Highlight References Type Colorization Navigating Navigate To: Files & Members, Ctrl+, Writing & Testing IntelliSense: Non-aggressive, Substring, PascalCase Generate From Usage: Type, Method, Property

8 Code-Focused VB IDE Lisa Feigenbaum Program Manager Microsoft

9 VB Language Syntax Enhancements Multiline Statement Lambdas Auto-implemented Properties Collection Initializers Array Literals Implicit Line Continuation Co/contravariance Office Deployment: No PIA Dynamic Language Interop on the DLR

10 VB Language Lisa Feigenbaum Program Manager Microsoft

11 Dynamic Versus Static Dynamic Languages Simple and succinctImplicitly typedMeta-programmingNo compilation Static Languages RobustPerformantIntelligent toolsBetter scaling

12 Open Source versus Commercial

13 Python Binder Ruby Binder COM Binder JavaScript Binder Object Binder Dynamic Languages On.NET Dynamic Language Runtime Expression Trees Dynamic Dispatch Call Site Caching IronPython IronRuby C# VB.NET Others…

14 ScriptObject calc = GetCalculator(); object res = calc.Invoke("Add", 10, 20); int sum = Convert.ToInt32(res); ScriptObject calc = GetCalculator(); object res = calc.Invoke("Add", 10, 20); int sum = Convert.ToInt32(res); Dim calc As ScriptObject = GetCalculator() Dim res As Object = calc.Invoke("Add", 10, 20) Dim sum As Integer = Convert.ToInt32(res) Dim calc As ScriptObject = GetCalculator() Dim res As Object = calc.Invoke("Add", 10, 20) Dim sum As Integer = Convert.ToInt32(res) VB 10, C# 4.0 And Dynamic Calculator calc = GetCalculator(); int sum = calc.Add(10, 20); Calculator calc = GetCalculator(); int sum = calc.Add(10, 20); object calc = GetCalculator(); Type calcType = calc.GetType(); object res = calcType.InvokeMember("Add", BindingFlags.InvokeMethod, null, new object[] { 10, 20 }); int sum = Convert.ToInt32(res); object calc = GetCalculator(); Type calcType = calc.GetType(); object res = calcType.InvokeMember("Add", BindingFlags.InvokeMethod, null, new object[] { 10, 20 }); int sum = Convert.ToInt32(res); dynamic calc = GetCalculator(); int sum = calc.Add(10, 20); dynamic calc = GetCalculator(); int sum = calc.Add(10, 20); Dynamic method invocation Dynamic conversion Dim calc As Calculator = GetCalculator() Dim sum As Integer = calc.Add(10, 20) Dim calc As Calculator = GetCalculator() Dim sum As Integer = calc.Add(10, 20) Dim calc As Object = GetCalculator() Dim sum As Integer = calc.Add(10, 20) Dim calc As Object = GetCalculator() Dim sum As Integer = calc.Add(10, 20) Dim calc As Object = GetCalculator() Dim sum As Integer = calc.Add(10, 20) Dim calc As Object = GetCalculator() Dim sum As Integer = calc.Add(10, 20) Visual C# Visual Basic Static binding Dynamic binding (pre-VS 2010) Dynamic binding (pre-VS 2010) Binding to ScriptObjects (JavaScript) Statically typed to be dynamic Dynamic method invocation Dynamic conversion

15 VB & C# 2010 Language FeatureVBC# Auto-implemented Properties Collection Initializers Array Literals Statement Lambdas Implicit Line ContinuationN/A Named/Optional Parameters Latebinding support (dynamic) Omit ref on COM calls Indexed Properties Interop with Dynamic Languages Co/contravariance PIA deployment not needed New in VS 2010 Already exists in VS 2008

16 VB & C# 2010 IDE Feature VBC# Generate From Usage: Generate Method Type colorization Background Squiggles: Top Level Analysis IntelliSense: Builder UI IntelliSense: Prefix Filtering Completion List Generate From Usage: Generate Type, Constructor, Property, Field IntelliSense: Consume First Mode IntelliSense: Substring & Camel-Case Match Navigate To Highlight References Call Hierarchy New in VS 2010 Already exists in VS 2008

17 VS 2010 /.NET 4 Highlights DGML Graphs WPF Drag & Drop IntelliTrace Parallel Extensions New Editor & Shell

18 Summary What We’ve Seen New Editor & Shell VB IDE VB Language VS 2010 &.NET 4 Highlights Call to Action Download Beta2 Use the resources and try it out Tell us your feedback

19 Resources Visual Basic Developer Center http://msdn.com/vbasic VB 2010 Resources http://msdn.microsoft.com/en-us/vbasic/dd819153.aspx Blogs http://blogs.msdn.com/vbteam (VB Team) http://blogs.msdn.com/lisa (Lisa) Visual Basic Forums http://forums.msdn.microsoft.com/en- US/tag/visualbasic/forums/ Connect https://connect.microsoft.com/VisualStudio

20 VB 2010 Resources

21 Related Content Architecture Discovery and Validation with Visual Studio 2010 [DEV313] November 12, 13:30-14:45 – Paris 2 - Hall 7-1c Peter Provost Building High Performance Parallel Software [DEV401] November 12, 15:15 - 16:30 – Berlin 1 - Hall 7-3a Steve Teixeira Pumping Iron: Dynamic Languages on the Microsoft.NET Framework [DEV04-IS] November 10, 17:00 - 18:15 – Interactive Theatre 2 - Orange Harry Pierson Dynamic in Microsoft Visual C# 4.0: The Why's and How's [DEV402] November 12, 10:45 - 12:00 – Helsinki - Hall 7-2a Alex Turner Parallel Computing for Managed Developers (Repeat) [DEV307] November 13, 09:00 - 10:15 – Europa 1 - Hall 7-3b November 13, 09:00 - 10:15 – Europa 1 - Hall 7-3b Steve Teixeira Using C# 4.0 & VB10 Interop Features with Silverlight, Office & Python [DEV03-IS] November 12, 15:15 - 16:30 – Interactive Theatre 2 - Orange Alex Turner Microsoft Visual Studio Tips and Tricks (Repeat) [DEV301] November 13, 13:00 - 14:15 – London 1 - Hall 7-1b November 13, 13:00 - 14:15 – London 1 - Hall 7-1b Scott Cate

22

23 Complete an evaluation on CommNet and enter to win an Xbox 360 Elite!

24 http://blogs.msdn.com/lisa Lisa.Feigenbaum@microsoft.com

25 © 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.


Download ppt "Lisa Feigenbaum Microsoft Program Manager Session Code: DEV314."

Similar presentations


Ads by Google