Announcing VS2010 / .NET Framework 4.0 Beta 1!
I’ve mentioned a couple of times that Beta 1 was imminent and now it is ready for download for all MSDN subscribers! You can download the beta here. General downloads will be available on Wednesday, stay tuned here for the formal announcement.
We’ve added a lot of great functionality for VS2010 and .NET Framework 4.0. the rest of this blog, I want to highlight a few areas you should give a try as you kick the tires on the beta.
Shell / Editor
The New Project Dialog supports multi-targeting (including the new 4.0 framework) and a new online access to VS Gallery:
We’ve added the new Tools Extension Manager which allows you to download new templates and other materials from VS Gallery directly from within VS. For Beta 1 we’ve posted a few demo examples for you to try out. Look for more as we get the ecosystem going:
Code focused work
We’ve added a lot of “code focused” features which basically makes the editing experience much nicer. For example:
- Consume first, fault in
- Writing test cases using the system
- Quick search (Ctrl + ,): works across VB & C# & C++
- Call Hierarchy
If you like the TDD approach, you should enjoy the new support.
Office Programmability
To make Office programming easier with C# and VB, we’ve added the new ‘dynamic’ keyword, named parameters, and optional parameters. In addition, you can build your application with the ‘No PIA’ support which means you no longer need to actually deploy a PIA.
In the following example, the first shows how you write code today and the second shows you the one line of code you would prefer to write and now can with VS2010:
much better:
This simple application now creates a new Word document and adds some text:
Language Improvements
We’ve made several improvements to our languages for this release including working on our parity efforts between C# and VB. As an example, VB now has automatic properties which removes the verbose syntax for get/set:
In this case VB has a unique feature of initialization as well. The next big change in this release for VB is to remove the dreaded ‘_’ at the end of continuing statements:
VB also gets statement lambdas (the ability to write inline subroutines):
And finally collection initializers:
C# also has a set of new features including the dynamic keyword shown above for better Office programming.
F#
F# now ships with VS2010 which means you can start using the language as soon as you install (no separate download).
The following code example shows the class sum of squares method written both in F# and in C# for comparison (|> is the pipeline operator which means it sends results from one operation to the next, just like | on the command line):
F# allows you to execute code directly in the interactive console:
WPF Designer
The WPF designer has been updated to include key features like data binding. If you are Windows Forms programming trying out WPF you will definitely be happy with this new set of features:
Master / detail forms are easy using the foreign key:
Silverlight
Silverlight tooling is also built into the product:
Web Tools
Web tooling has been updated with this version including the addition of HTML snippets. This feature is incredibly handy if you are like me and spend more time in text than in UI designers:
JavaScript IntelliSense has also been updated for performance and accuracy. As you start to type new code, the editor will infer what you meant and update as you go:
This work also tracks namespaces you might create and handles inline comments for a better editing experience:
JQuery now ships with VS with great IntelliSense support:
C++
We’ve made a significant number of improvements to the C++ support in VS2010. Among them:
- Build support has been moved to MSBUILD to enable better scaling, diagnostics, extensibility, and easier customization
- New project editors can be used to create your own build lab scripts
- C runtime multi-targeting (makes it easier to move to new versions of VS)
- Improved code focused work including quick search, improved IntelliSense, etc
Creating build lab scripts:
Including easy use of relative paths:
Example of multi-targeting (V9 == 2008, V10 == 2010). You can also create your own extensions for other configurations:
binds to the right set of lib paths.
Quick search is indexed using a local database making it fast and easy to find things:
IntelliSense has also been improved to understand macros and #ifdef’s for more accurate editing.
Team Arch
Visual Studio Team Architecture has been updated to support standard UML (V2.1.1). With this support you can do architecture diagrams, sequence diagrams, etc:
Adding an artifact using the designer:
activity diagram:
Activity editor:
Integration with TFS including documents:
structural diagrams:
The Architectural Explorer allows you to browse through your namespaces and explore the structure of your application:
Once you find the code you want, you can create a sequence diagram to understand the code flow better:
You can view you entire system at the block level as well (handy for checking layering):
Test and Lab Manager
The new Test and Lab Manager tool (which is written using WPF and does not require the full Visual Studio install) allows you to manage both test cases as well as lab (virtualization) configurations:
Test plans are easy to create, execute, and track:
I will be posting a tutorial walk through of doing manual testing using the tool soon.
TFS
TFS includes several new features including branch visualization and easier tracking of changes through the system:
visualize your source hierarchy:
Source annotations now track back through branching operations so you no longer just see the person who made the branch operation. In addition, you can visualize a changeset and see where it has been applied:
Another changeset view:
Drag and drop can move a changeset from one branch to another:
change moved:
Build automation now targets the new Workflow support in .NET Framework 4.0. You can use the new designer to outline your builds:
TFS Reporting
Hierarchical work items are now supported:
Same in Excel:
As well as MS Project:
Rich text editing was common request for work item tracking. Turns out I had a dentist appointment during the Beta 1 demo walk through :)
TFS is the backing store for all work items and can be accessed via Visual Studio, Test and Lab Manager, as well as Office. Here you can see the same query run in Visual Studio as well as Test and Lab Manager:
TFS Web Access was added with VS2008. We’ve made upgrades to these features with VS2010 including integration with MOSS:
You can edit your main portal as a user and add your own webparts:
You can also create/edit webparts using Excel server:
And then publish them back:
Summary
Wow, that’s a lot of features! What’s amazing is that I haven’t actually covered everything in the release. We also have a number of advanced parallel computing advances, SharePoint tooling, new WorkFlow features, etc.
You can find instructions for downloading the feedback and sharing your feed back here. The best way to get prepared for VS2010 is to get VS2008 deployed today. You can find everything you need on our home page here.
Enjoy!