It's a big day at Microsoft today as Visual Studio 2010 officially releases. There's a lot going on with this release and I thought I'd do a big rollup post with lots of details and context to help you find your way to the information and downloads you're looking for.
Download Visual Studio 2010
First, if you want it, go download Visual Studio 2010 now. If you're an MSDN Subscriber or WebSiteSpark/BizSpark member, you can download the final release now. If not, you can download a free trial or one of the free Express editions.
- Microsoft Visual Studio 2010 Professional
- Microsoft Visual Studio 2010 Ultimate
- Microsoft Visual Studio Team Foundation Server
I'm running the free Visual Web Developer 2010 Express on my netbook. You can install ASP.NET 4, ASP.NET MVC 2, and Visual Web Developer 2010 Express really quickly with the Web Platform Installer.
There's an excellent page on MSDN that's cherry-picked and categorized the best VS2010 content, but I've included my own list below.
What's new in Visual Studio 2010 and .NET 4?
Buttloads. Here's the things I'm digging most.
- What's new in Visual Studio 2010 - The IDE and Editor has really shaped up nicely. I've got it installed side-by-side with by existing VS2008 with no problems. There's hundreds of new things that I can't fit here, although some favorite IDE features of mine are:
- Multimonitor support - You can drag documents or toolboxes out of the IDE and onto other monitors.
- Zoom - You can "ctrl+scroll" (press the Ctrl key while scrolling your mouse wheel) to zoom in editors or diagrams. The editor has been totally rewritten using WPF.
- Navigate To - Hit "ctrl+comma" to navigate around your files, code, variables or methods much faster than Ctrl-F.
- Code-First Intellisense - You can hit Ctrl+Alt+Spacebar to tell toggle intellisense between regular Intellisense and a more TDD-friendly style that lets you create new classes and methods without getting hassled by the editor.
- Multi-Targeting Support - You can use VS2010 to create (target) .NET 2.0, 3.0, 3.5 or 4 applications. That means you can work on existing applications and get all the new IDE features while also working on new .NET 4 apps, all with the same IDE.
- ASP.NET 4 and ASP.NET MVC 2 are included in the box. WebForms now lets you create clean markup (no more tables) that's semantically correct and CSS-friendly, even for "legacy" controls and clientids that you control. ViewState is way smaller and can be turned on and off with greater granularity. Chart controls are included as well. On the MVC 2 side, we've got Areas, Strongly-typed helpers, Templated Helpers, field validation in models, and more. Both MVC and WebForms get all the core ASP.NET 4 improvements like a smaller web.config, the new <%: %> encoding syntax, extensible output caching, preloading of web apps, session state compression and routing for SEO-friendly URLs.
- Windows Communication Foundation (WCF) gets easier with a better configuration experience for services (bothSOAP and REST) as well as new functionality around routing and discovery.
- Windows Workflow (WF) gets a massive speed increase, the flowchart services, and it's way easier to make custom services than before. It's all in System.Activities.
- Entity Framework 4 and WCF Data Services 4 (OData) - Lots of improvements in the Data space, particularly in the Entity Framework 4. There's POCO support for Self-Tracking Entities, a DDL Generation Provider for creating databases based on a model, as well as lots of improvements to the designer. Don't forget WCF Data Services, I blogged about how easy it is to implement OData recently when I made an API for StackOverflow.
- What's new in C# 4 - C# gets a lot of new features in version 4 (or Visual C# 2010 if you like) like Dynamic Support (that's the DLR, built right in), Type Equivalence, and Covariance and Contravariance which makes generics much more flexible.
- What's new in Visual Basic 2010 - Jonathan Aneja discusses the coevolution strategy, and new features like Implicit Line Continuation, Statement Lambdas, Auto-Implemented Properties, Collection Initializers and how VB uses the DLR (Dynamic Language Runtime).
- New C++ and MFC Features - What? C++? Oh, yes. Pete Brown recently dipped his feet back into C++ with VS2010 and was shocked to find how easy it was to make a Ribbon Application with MFC. In this article, Samit Kumar talks about some of the new C++0x (that's see plus plus oh ex) core language features as well as major improvements in the standard library. VS 2010 enables lambda expressions, the auto keyword, rvalue references, static_assert, nullptr and decltype. It's not your father's C++. Well, maybe it is, if your dad is a ninja.
- What's new in WPF - Pete Brown has a fantastic and deep blog post on all the new WPF4 features. There's speed updates, a better designer, Windows 7 and touch support, text is crystal clear (not blurry!), a new datagrid, pixel shaders, the Visual State Manager, WPF Tracing support in VS2010 and more.
- MEF, the Managed Extensibility Framework comes with .NET 4. You use MEF to create extensible, compose-able applications. You don't need to download anything, it's integral to the framework and it works anywhere you like, including WinForms, WPF, ASP.NET or Silverlight.
- F# is in the box - F# ships with Visual Studio 2010. There's a good Introduction to Functional Programming for .NET Developers you should check out to see how you can use F# and how it will augment and complement your current language of choice.
- Concurrency, Threading and Parallelism - Check out the Parallel Computing Dev Center and how PLinq, the Task Parallel Library and the Coordination Data Structures work. Understand how to apply parallel patterns with .NET 4 with this awesome whitepaper. There's also major improvements in the Profiling Tools, including a Concurrency Visualizer for seeing how Multithreaded apps really behave. View their threads and how those threads migrate across cores.
- Team Foundation Server - Previously, installing TFS was, ahem, challenging. Today, I've seen people install TFS in 6 minutes with VS2010. Some say they can do it in 3. The point is, it's easy to install now along with lots more new features.
Also, there's a FREE e-Book called "Moving to Visual Studio 2010" that you might want to check out. It's an excerpt of a larger book that'll be coming from MSPress later this summer. It takes a interesting approach as it has three parts, moving from VS2003, moving from VS2005, and moving from VS2008. It's clever, actually. You start in the book on the version that you're currently on. If you're not familiar with versions like VS2008, you start at the beginning. Otherwise, you jump ahead. When you're done, you're ready to move to VS2010.
MSDN and Visual Studio 2010
When a new product launches, MSDN launches with updates and new features of its own. Here's a few things the folks at MSDN have been doing to support the launch.
- Better MSDN Search - Most people likely use a search engine to search MSDN, but if you do search from within MSDN, there are a number of new improvements. You can refine by source, saying only search blogs, or only search the library. There's also an OpenSearch provider so you can search the MSDN Library directly from within Windows itself.
MSDN Search also includes Metadata from the results to help you find right thing. For example, if a search turns up a CodePlex project, I can see type-specific details within search results:
- MSDN Subscriber Downloads Improvements - There's been lots of UX improvements including as-you-type filtering as well as filtering by platform (x64, etc) and language. I will very likely not need to download Quechua Windows, so now I don't need to see it.
- MSDN Library in Lightweight and ScriptFree - You can choose between three flavors of MSDN Library, Classic (the one with the treeview on the side), Lightweight (what I use) or ScriptFree. ScriptFree is great for mobile devices, and it's lightning fast anywhere. Lightweight is the new default and I like it because it features community annotations made to the library prominently on the left side as well as a tabbed interface for code sample languages. I blogged a preview of this work last year and included some charts and graphs showing the improvements in speed worldwide.
- Integration of all VS sites - There were too many developer "centers" on MSDN and folks were getting lost. Many centers have been conflated into a clearer, more logical layout. The Visual Studio, Team System, and VS Extensibility Centers were merged into the single Visual Studio Center. There's a lot more focus on discoverability in the Visual Studio Center.
- Video Improvements - There's thousands of How Do I? videos on MSDN and they tell me they are improving the backend, the player and the metadata around them. The player is larger now, you can share videos from MSDN on your favorite social networking site, rate them, leave comments, and explore related videos.
- Profile Activities - User Profiles are integrated between sites and you can see your activity and points as you move through the system. For example, here's Arnie Rowland's profile. You can see his activity in the forums and galleries as well as his ranking and points as a community contributor.
Other Cool Stuff Happening Today
I'd hate to have this little nugget get buried in the deluge of VS2010 goodness.
- The Surface Toolkit for Windows Touch BETA goes out today. Check out http://www.surface.com under Technical Resources and the Surface Blog for more details. This toolkit is a set of controls and sample code that let WPF developers create cool multi-touch enabled experiences with the cool "Surfacey" controls that the only folks with Big Ass Tables have been able to use. This is exceedingly cool because it not only makes it WPF devs can make better multi-touch apps for Windows Touch PCs but it acts as a jump-start for the next version of Microsoft Surface. It will integrate with Visual Studi0 2010 and give you new project and item templates and a dozen new controls like the ScatterView and SurfaceInkCanvas. This is a cool thing, so I'll be talking about it soon, as will Pete Brown.
Lots of great stuff going on today. Have fun!