Visual Studio 11 (also called "vNext") is the next generation of IDE from Microsoft. It seamlessly spans the entire lifecycle of a software application starting from design and architecture phases to coding, testing, validation, and deployment. This new version sports improvements in multi-monitor support, toolbox, IDE search, solution explorer, filtering capabilities, performance improvements with reduced memory usage, explorer search, etc. In essence, Visual Studio 11 provides an IDE that is simpler, easy to use, faster, and rich with new features. In this article, I examine many of these features in addition to the new features in Microsoft .NET Framework 4.5.
The release date of Microsoft Visual Studio 11 has not been announced. So, as of this writing, the Developer Preview Version of Visual Studio 11 is the only available option. Begin by downloading Visual Studio 11. To make sense of the new features, let's first take a quick look at the new features in Microsoft.NET Framework 4.5.
New Features in .NET Framework 4.5
Microsoft .NET Framework ships with Visual Studio 11 and provides a platform for executing managed applications that are portable, scalable, and secure. Microsoft .NET Framework 4.5 provides enhanced support for asynchronous programming, and it enables developers to write code that executes faster. The Parallel Computing support has been enhanced to a great extent. A server garbage collector has been introduced that reduces GC pause times. The framework also provides extended support for Windows Presentation Foundation, Windows Workflow Foundation, and Windows Communication Foundation. Enhancements to ASP.NET include support for new HTML form types, WebSockets protocol, asynchronous modules, asynchronous handlers, model binders in Web Forms, etc.
In addition, the new features in .NET Framework 4.5 include:
- The ability to determine and limit the execution time of the regular expression engine while evaluating regular expressions.
- Enhanced performance while retrieving resources.
- Enhanced zip compression for improving the performance of compressed data.
- Support for defining the culture of an application domain.
- Enhanced support for asynchronous programming.
- Support for state machine in Windows workflow.
- Support for generic types in the Managed Extensibility Framework.
These features show wholesale improvement of the runtime environment in many different areas. It's not quite the tidal wave of features that would have warranted a 5.0 release number, but it certainly suggests that developers will want to migrate to the new version at the first practical moment.
The three basic promises of Visual Studio 11 include: improved user experience, better developer experience, and team experience. The MSDN blog states: "Visual Studio 11 includes several new features which will help developers collaborate more effectively while creating exciting experiences for their users." MSDN offers an even more detailed discussion of the new features in Visual Studio 11. The new features of importance in Visual Studio 11 include:
- Support for developing Metro-style applications and enhanced support for game application development
- Improved diagnostics support.
- Support for analysis of code duplication and cloning.
- Support for exploratory testing and enhanced support for unit testing.
- Enhanced support for Application Lifecycle Management (ALM).
- Support for local, simulator, and remote debugging.
- Support for IIS Express as the default integrated Web server.
- Support for smart tasks.
- Support for creating user controls from Web pages.
- Event handler generation from markup.
Support for Metro-Style Applications and Game Application Development
Visual Studio 11 provides support for Metro-style applications.These applications are tailored to the device on which they execute. For Windows user interface and touch interaction, you'll be able to have touch screens in the user interface to interact with such applications. MSDN states: "Metro-style apps are designed for specific form factors and they leverage the power of the Windows operating system. A subset of the .NET Framework is available for building Metro-style apps for Windows using C# or Visual Basic. This subset is called .NET APIs for Metro-style apps."
The salient features of Metro-style applications are that they are touch-based and interactive, engaging, immersive, and designed for multitasking. Microsoft has more information on Metro-style applications.
Visual Studio 11 contains a lot of graphics tools to enable game developers be more productive and develop intuitive and innovative games.
Improved Diagnostics Support
A new tool called Page Inspector works for Web applications and Web site projects. This feature enables you to inspect your Web pages and diagnose issues seamlessly. It should be noted, however, that this feature is not available in Visual Studio 11 by default you'll need to install it separately using the Web Platform Installer. Once you have installed it, you will be able to see this feature in the source view, design view mode, and even in the solution explorer of your project. In essence, it is a new tool in Visual Studio 11 that provides an integrated experience between ASP.NET, the Web browser, and your application's source code, and enables you to quickly analyze and diagnose issues. Download the Web Platform Installer.
Support for Analysis of Code Duplication and Cloning
Code Clone Analysis is a great new feature introduced in Visual Studio 11. It examines your code and finds logic that has been duplicated so that you can refactor your code and come up with some common reusable methods to avoid code duplication. This is particularly handy when you are trying to fix a bug that may have been replicated throughout the solution.