Lisa Feigenbaum Community Program Manager Microsoft Corporation SESSION CODE: DEV04-INT.

18
JUNE 7-10, 2010 | NEW ORLEANS, LA

Transcript of Lisa Feigenbaum Community Program Manager Microsoft Corporation SESSION CODE: DEV04-INT.

JUNE 7-10, 2010 | NEW ORLEANS, LA

Meet the Visual Basic TeamLisa FeigenbaumCommunity Program ManagerMicrosoft Corporation

SESSION CODE: DEV04-INT

Session Agenda

Language Trends & Directions

IDE Features & Future Plans

Q&A with the Team

Trends

Declarative

ConcurrentDynamic

Declarative

ConcurrentDynamic

Declarative programming“More what, less how”

VS 2010:

Languages (C#, VB, F#, IronPython, IronRuby)

F# Functional LanguageVB Statement Lambdas

PlatformPLINQLINQ to SharePoint

Declarative

Concurrent programmingParallelism: CPU (multicore) & IO (connected)

Declarative

ConcurrentDynamic Concurrent

VS 2010:

Languages (C#, VB, F#, IronPython, IronRuby)

F# Parallel Map

PlatformTask Parallel Library, PLINQConcurrent Data StructuresC++ Concurrency RuntimeSilverlight (Asynchronous)

Dynamic programmingDynamic World: Web, Data, Languages

Declarative

ConcurrentDynamicDynamic

VS 2010:

Languages (C#, VB, F#, IronPython, IronRuby)

IronPython & IronRuby Dynamic LanguagesC# & VB Dynamic Binding

PlatformDynamic Language Runtime

Co-Evolution

VB & C# 2010 LanguageFeature VB C#

Auto-implemented Properties

Collection Initializers

Array Literals

Statement Lambdas

Implicit Line Continuation N/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 2010Already exists in VS 2008

VB & C# 2010 IDEFeature VB C#

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, FieldIntelliSense: Consume First Mode

IntelliSense: Substring & Camel-Case Match

Navigate To

Highlight References

Call Hierarchy

New in VS 2010Already exists in VS 2008

Development Tasks

Understanding

Navigating

Writing

Modifying

Debugging

Testing

Compiler as a Service

CompilerCompilerSource codeSource code

SourceFile

Source codeSource code

.NET Assembly

Class

Field

public Foo

privatestring

X

LanguageObject Model

Read-Eval-Print Loop

Hosting inother contexts

DSL Embedding

12

Visual Basic Team Members

Anthony GreenVB Compiler Program [email protected]

Dustin CampbellC# & VB IDE Program [email protected]

VB Team Blog:http://blogs.msdn.com/vbteam

VB Dev Center: http://msdn.com/vbasic

Lisa FeigenbaumVS Languages Community Program [email protected] http://blogs.msdn.com/lisa

Lucian WischikVB Language Program [email protected] http://blogs.msdn.com/lucian

Q & A

Resources

Visual Basic Developer Center: http://msdn.com/vbasic

www.microsoft.com/teched

Sessions On-Demand & Community Microsoft Certification & Training Resources

www.microsoft.com/learning

Learning

Resources for Developers

http://microsoft.com/msdn

Languages Sessions @ TechEd 2010Day Time Title Presenter RoomMon 6/7 13:00-14:15 DEV406: Integrating Dynamic Languages into Your Enterprise Applications Jesus Rodriguez Rm 279Mon 6/7 13:00-14:15 DEV06-INT: VS 2010 Debugger Tips & Tricks Habib Heydarian Rm 349Mon 6/7 14:45-16:00 DEV204: New IDE and Language Features in Visual Studio 2010 Using Visual Basic and C# Ken Getz Rm 272Mon 6/7 14:45-16:00 DEV314: Manycore and the Microsoft .NET Framework 4 with Microsoft Visual Studio 2010 Huseyin Yildiz Rm 288Mon 6/7 16:30-17:45 DEV09-INT: Visual Basic and C# IDE Tips and Tricks Dustin Campbell Rm 347Tue 6/8 13:30-14:45 DEV404: C# in the Big World Mads Torgersen Rm 291Tue 6/8 15:15-16:30 DEV316: Modern Programming with C++Ox in Microsoft Visual C++ 2010 Kate Gregory Auditorium BTue 6/8 17:00-18:15 DEV315: Microsoft Visual Studio 2010 Tips & Tricks Dustin Campbell, Scott Cate Auditorium BTue 6/8 17:00-18:15 ARC205: Patterns of Parallel Programming Ade Miller Rm 276Wed 6/9 08:00-09:15 DEV10-INT: Using Dynamic Languages to build Scriptable Applications Dino Viehland Rm 347Wed 6/9 08:00-09:15 DEV319: Scale and Productivity for C++ Developers with Microsoft Visual Studio 2010 Boris Jabes Rm 298Wed 6/9 09:45-11:00 DEV401 Advanced Use of the New Visual Basic 2010 Language Features Lucian Wischik Rm 356Wed 6/9 11:45-13:00 DEV408: Task Parallel Library: Design Principles and Best Practices Shy Cohen Rm 283Wed 6/9 13:30-14:45 DEV03-INT: Meet the C# Team Lisa, Alex, Eric, Mads Rm 346Wed 6/9 17:00-18:15 DEV320: Simplify XML Processing Using LINQ to XML Paul Sheriff Rm 387Thu 6/10 08:00-09:15 DEV317: Profiling and Debugging Parallel Code with Microsoft Visual Studio 2010 Huseyin Yildiz Rm 293Thu 6/10 08:00-09:15 DEV407: Maintaining and Modernizing Existing Applications with Visual Studio 2010 Kav Latiolais Rm 356Thu 6/10 09:45-11:00 DEV307: F# in Microsoft Visual Studio 2010 Luke Hoban Rm 276Thu 6/10 15:15-16:30 DEV04-INT: Meet the Visual Basic Team Lisa, Anthony, Dustin, Lucian Rm 346Thu 6/10 17:00-18:15 DEV11–INT: IronPython Tools Dino Viehland Rm 347Hands On Lab DEV05-HOL: Introduction to F# La Nouvelle BallroomHands On Lab DEV12-HOL: Microsoft Visual Studio 2010: Office Programmability La Nouvelle Ballroom

Complete an evaluation on CommNet and enter to win!

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