hen I was asked to write a few pages on what's coming in the next version of Microsoft Visual Studio .NET (code named Whidbey), the biggest issue I had was how to limit this article to a few pages.
I opted to list a few categories and drill down into each. I'm not going to cover everything, just some key items in each area. Please note that not all of these changes are implemented in the PDC build that attendees are receiving, and that some of these features are still in the planning stages. That said, here are the categories that I'd like to discuss:
- New language features in VB, C#, C++, and J# .NET Framework:
- Enhancements to the Framework that make development easier
- Changes to the IDE that make work go faster and help develop more efficiently.
There is continued support for interoperability between languages. This means that you can continue to debug and inherit across languages, and all languages continue to have full access to the .NET Framework. That said, each product focuses on its core areas of development. For more information on language differentiation, see http://msdn.microsoft.com/vstudio/productinfo/whitepapers/default.aspx
Core Language Enhancements
All languages in Whidbey support core enhancements.
Generics: The CLR includes a type-safe, high-performance, compile time-verified version of Generics, which allow you to author, test, and deploy code once, and then reuse that code for a variety of different data types with negligible performance impact to applications.
Partial Types: This allows you to break a class into multiple files, and is useful for classes that may be partially computer-generated (you can put the computer-generated portion in a separate physical file from the code that you write), and for easier maintenance of large classes.
Visual Basic Language Enhancements
Visual Basic .NET Whidbey radically improves developer productivity while continuing to provide full access to the .NET Framework. Visual Basic .NET language enhancements include support for multiple features, including:
My Classes: Greatly reduce code associated with common programming tasks
XML code documentation: Allows you to document code and have it used automatically by IntelliSense and other tools
Miscellaneous: Including features like operator overloading and support for unsigned data types
Visual C++ Language Enhancements
Whidbey unlocks the potential of Visual C++ on .NET. You can target the CLR without abandoning your investment in your C++ code-base. You don't have to rewrite in another language to leverage .NET functionality and you don't have to sacrifice C++ power and flexibility. Visual C++ includes .NET support for templates, Generics, and STL, among other features. The syntax has been refined. Of course, you're also investing in advanced code-generation optimizations such as Profile Guided Optimization, tools for 64 bit development, and library features such as CRT security and Fusion.
Visual C# Language Enhancements
Visual C# Whidbey is centered on "code-focused RAD," with emphasis on language features. Enhancements to Visual C# include:
Iterators: Constructs that simplify the creation of enumerator patterns
Anonymous methods: Allow you to create code blocks that can be encapsulated in a delegate and executed at a later time
Visual J# Language Enhancements
Visual J# Whidbey includes a number of new enhancements, including:
Browser controls: Allow you to migrate existing applet source code to run on the .NET Framework
New types: Add support for authoring Enums and Value types
New keywords: Adds support for assert and volatile keywords
Swing Framework: Adds new functionality