VS 2010 productivity improvements - Part I
Every developer deserves a fantastic development environment that allows them to write, understand, navigate, and debug code as efficiently as possible. After all, developers spend most of their time in the IDE.
As we designed and built Visual Studio 2010, we let this principle guide the product, and I think we've delivered an IDE that raises the development experience bar significantly. Starting today and over the coming weeks, I will highlight my favorite productivity features in Visual Studio 2010. Some of them are small features, and some of them required a large, coordinated effort across the team, but each one makes developers' lives a little easier.
Multi-Monitor Support
Many developers have invested time and money in their coding cockpit: just the right chair, a keyboard that fits your hands and habits, and, of course, two or three monitors so you can maximize your screen real estate. Until 2010, Visual Studio's single window didn't let you spread your coding experience across more than one monitor, but now that's changed. Tear-off tabs allow you to drag coding windows and tool windows out of Visual Studio's window frame and onto another area of your screen or another monitor. You can pull as many windows out of the Visual Studio window frame as you like, and then put them back into the editor tab strip or dock them within Visual Studio again when you like.
Multi-Targeting
Even though you are taking advantage of the latest .NET runtime, your customers may not be, or you may have applications that are built against a previous version that aren't quite ready to be upgraded to .NET 4 yet. Visual Studio 2010 allows you to build projects that target .NET 2.0, .NET 3.0, .NET 3.5, or .NET 4. The New Project dialog lets you choose the version of the .NET Framework you'd like to target or find additional versions or profiles of the .NET Framework online:
You can change the targeted version on an existing project in the project properties:
Once you've set a particular targeted version of .NET for your project, you will get IntelliSense, toolbox controls, and properties in the property grid that are appropriate for the version you've chosen. The debugger, profiler, and compilers have also been updated to support multi-targeting. And .NET 4 and Visual Studio 2010 run side by side with previous versions so you can use the appropriate tools and frameworks for your project.
Code Navigation
What was the name of that method? It's something like "state custom".
When you're working with a large codebase, sometimes you remember something about a piece of code you're looking for, but not the specifics. The new Navigate To tool lets you find code from whatever you can remember.
You can bring up the Navigate To tool using Ctrl + comma, then put whatever you remember into the Search terms box. Visual Studio will do a fuzzy search and give you all matching members, functions, macros, etc., along with their location and scope.
Items from referenced libraries will appear in the results as well, but if you're interested only in items from your code, you can check the "Hide external items" checkbox to filter to just your code.
More Coming Soon
This is just a taste of a few of the productivity enhancements in Visual Studio 2010. Look for Part II, which will focus on editor improvements, soon!
Namaste!
Comments
Anonymous
May 25, 2010
VS 2010 is really very slow. I prefer using VS 2008Anonymous
May 25, 2010
[quote]Even though you are taking advantage of the latest .NET runtime, your customers may not be, or you may have applications that are built against a previous version that aren't quite ready to be upgraded to .NET 4 yet. Visual Studio 2010 allows you to build projects that target .NET 2.0, .NET 3.0, .NET 3.5, or .NET 4. The New Project dialog lets you choose the version of the .NET Framework you'd like to target or find additional versions or profiles of the .NET Framework online:[/quote]
- Eh, not unless your .NET applications are written in managed C++. You have to manually edit the project xml file to correctly target your .NET runtime. Still, we are thankful that we don't have to use edlin to edited it I suppose.
Anonymous
May 25, 2010
Agree with Faisal. VS 2010 is super slow... I have built a small tool to switch a project/solution from VS2008 to 2010 and vice versa, so I could develop with VS2010 while my colleagues where still using 2008... in the end, instead of migrating everybody to 2010, I moved back to 2008. 2010 is totally unproductive.Anonymous
May 25, 2010
Hey Now Somasegar, Nice post, clear & easy to read. Thx 4 the info, CattoAnonymous
May 26, 2010
Nice post. I run my vs 2010 ultimate on an amazon ec2 instance and the performance is great for me.Anonymous
May 26, 2010
VS 2010 is really very fast. I prefer using VS 2010.Anonymous
May 26, 2010
The comment has been removedAnonymous
May 26, 2010
Contrary to the 2 posters above, I find VS.2010 very responsive. However I do use current gen hardware as well as a small SSD for my OS (win7) + VS. Executing a batch of 1000+ unittests is near instant, literaly fractions of a second. I would advise upgrading your system... Kind regards,Anonymous
May 26, 2010
Hi Soma I really appreciate all the work that the VS team done in this release but I wait for the Modeling and Visualization Feature Pack which is very very very coooool as it will support visulaization for the unmanaged world and the websites Keep Going forward :)Anonymous
May 26, 2010
The features listed in this article are really useful and are exclusively available with VS 2010 and not with any earlier VS versions. I personally have great experience so far with VS 2010 and I am wondering under what kind of system infrastructure, other posters experienced VS 2010 slower than VS 2008.Anonymous
May 26, 2010
Multi-Targeting works great unless you have unit tests - those projects can't be changed from targeting .NET 4. This prevents me from moving from vs 08 to 2010!Anonymous
May 26, 2010
Good article and I'm looking forward to the next article. I have had no problems with VS2010 except problems with the Help. (I realize that's a different team). Good job!Anonymous
May 26, 2010
@Faisal, Smnbss, and Jason, We'd like to know more about the problems you're having and why experience isn't as good as some of the other people posting here. Can you please contact us at DevPerf@Microsoft.com with more information about the your environment and the problems you're seeing? Thanks, David Berg Developer Division Performance Engineering and FundamentalsAnonymous
May 26, 2010
We switched to VS2010 the day it was released and prompty upgraded our projects to utilize the .NET 4 framework and it's been great. The development environment occasionally locks up, which is always irritating, but not enough to justify going back to VS2008. We're running on hardware less than a year old and 64 bit Windows 7Anonymous
May 26, 2010
Multi-monitor support is good feature. I'll definitely convince my team to use it for upcoming projects. Currently we are on VS-2008.Anonymous
May 26, 2010
Multi-monitor support is a good feature. I'll definitely convince my team to use it for upcoming projects. Currently we are on VS-2008.Anonymous
May 28, 2010
I found multi-monitor support and code navigation for searching method names really useful. Thanks!Anonymous
May 30, 2010
The comment has been removedAnonymous
May 30, 2010
Seeing how this blog entry is about "PRODUCTIVITY ENHANCEMENTS", I decided to post a link here about what Somasegar, Suzanne Hayden and the rest of the Microsoft team consider an ENHANCEMENT. social.msdn.microsoft.com/.../87455de6-2a7d-42dd-b51f-ddd442c3e3fd