What's New in Visual Studio 2012

You can find information about new features and enhancements in Visual Studio 2012 by reviewing the following sections of this topic and the topics to which they link:

Windows Store Apps

  • Designing and building Windows Store apps

  • Debugging, optimizing, and publishing Windows Store apps

  • Designing and building Windows Phone apps

  • Testing, optimizing, and publishing Windows Phone apps

Visual Studio IDE

  • Projects and Solutions

  • Window Management

  • Search

  • Code Editing for C++

  • Code Editing for JavaScript

Languages

  • Visual Basic

  • Visual C#

  • Visual C++

  • JavaScript

  • Visual F#

Application Lifecycle Management and Team Foundation Server

  • Managing the application lifecycle

  • Modeling applications

  • Developing applications and collaborating more effectively as a team

  • Automating and debugging builds

  • Microsoft Test Manager

ASP.NET 4.5 and Web Development

  • ASP.NET 4.5 Core Services

  • ASP.NET 4.5 Web Forms

  • General Enhancements for Web Development

  • Data-Related Enhancements for Web Development

  • IIS Express for Web Development

  • ASP.NET Web API

Other Enhancements

  • LightSwitch

  • Data Application Development

  • Graphics Tools

  • Parallel Computing

  • SharePoint Development

  • Office Development

  • .NET Framework 4.5

Visual Studio Updates

  • Visual Studio 2012 Update 1

  • Visual Studio 2012 Update 2

  • Visual Studio 2012 Update 3

Designing and building Windows Store apps

Debugging, optimizing, and publishing Windows Store apps

Designing and building Windows Phone apps

Testing, optimizing, and publishing Windows Phone apps

Projects and Solutions

  • Work with Visual Studio 2010 SP1 projects and files in both Visual Studio 2012 and Visual Studio 2010 SP1.

    For more information, see Visual Studio 2012 Compatibility.

  • Browse code in Solution Explorer.

    Browse the types and members in your projects, search for symbols, view a method’s Call Hierarchy, find symbol references, and perform other tasks without switching between multiple tool windows. For more information, see Viewing the Structure of Code.

  • Install online samples.

    Use Visual Studio to download and install samples from the MSDN Code Gallery. You can download samples that explain new technologies and help you to jump start projects and debug your code. For more information, see Accessing Online Samples.

  • Solutions load asynchronously.

    Projects are now loaded asynchronously, and the key parts of the solution load first, so that you can start to work faster.

Window Management

  • Preview files in the Code Editor.

    Reduce file clutter in the editor by viewing files without opening them. Preview files appear in a blue tab on the right side of the document tab well. The file opens if you modify it or choose the Open button. For more information, see Kinds of Windows.

  • Access frequently used files more easily.

    Pin files that you use often to the left side of the tab well so that you can access them easily regardless of how many files are open in the IDE.

  • Arrange windows on multiple monitors more effectively.

    Dock multiple floating tool or document windows together as a “raft” on other monitors. You can also create multiple instances of Solution Explorer and move them to another monitor. For more information, see How to: Arrange and Dock Windows.

  • Change the color scheme of the IDE.

    Choose either the Light or Dark color theme for the Visual Studio UI. For more information, see How to: Change Visual Studio Fonts and Colors.

  • Search across the IDE.

    Specify a word or a phrase, and then choose an entry from the list to open the dialog box or window that’s associated with the item or command. For more information, see Quick Launch.

  • Search in tool windows.

    Filter the view by entering a keyword in the search box at the top of certain tool windows, such as the Toolbox, Solution Explorer, Error List, and Team Explorer. For more information, see Finding and Replacing Text.

  • Find strings by using regular expression syntax from the .NET Framework.

    Use regular expression syntax from the .NET Framework in the Find and Replace control and the Find in Files and Replace in Files dialog boxes. For more information, see Using Regular Expressions in Visual Studio.

Code Editing for C++

  • Specify more semantic colorization.

    More C++ tokens now have colorization by default, and you can specify more colorizations. For more information, see Writing Code in the Code and Text Editor.

  • Use improved reference highlighting.

    You can highlight all instances of a symbol just by pointing to one instance. You can move among the highlighted references by choosing the Ctrl+Shift+Up Arrow or Ctrl+Shift+Down Arrow keys. You can turn this feature off or on.

  • Choose member functions as you type.

    The List Members list appears automatically as you enter text in the code editor. Results are filtered so that only relevant members appear. For more information, see Using IntelliSense.

  • Take advantage of C++/CLI IntelliSense.

    C++/CLI now supports IntelliSense features such as Quick Info, Parameter Help, List Members, and Auto Completion.

  • Speed up your coding by using code snippets.

    You can choose a code snippet from the List Members list and then fill in the required logic. Snippets are available for switch, if-else, for, and other basic code constructs. You can also create custom snippets. For more information, see Code Snippets.

Code Editing for JavaScript

  • Use features of ECMAScript 5 and HTML5 DOM.

  • Provide IntelliSense for function overloads and variables.

    Provide IntelliSense information by using new elements supported in triple-slash (///) code comments. New elements include <var> and <signature>. For more information, see XML Documentation Comments (JavaScript).

  • View signatures in the statement completion list.

    Function signatures appear on the right side of the statement completion list.

  • Use smart indenting, brace matching, and outlining when you write code.

  • Use Go To Definition to locate function definitions in source code.

    Right-click a function, and then click Go To Definition (or put the cursor in the function and then choose the F12 key) to open the JavaScript source file at the location in the file where the function is defined. (This feature isn't supported for generated files.)

  • Get IntelliSense information from standard JavaScript comments.

    The new IntelliSense extensibility mechanism automatically provides IntelliSense when you use standard comment tags (//).

  • Extend JavaScript IntelliSense to improve support for libraries from other organizations.

    Use extensibility APIs to provide a customized IntelliSense experience. For more information, see Extending JavaScript IntelliSense.

  • Set a breakpoint within a single line of code.

    When a single line contains multiple statements, you can now break on a single statement.

  • Control which objects are available in global scope.

    For more information, see JavaScript IntelliSense.

  • View statement completion for identifiers even when accurate information about the object isn't available.

    For more information, see Statement Completion for Identifiers.

  • Get IntelliSense information for objects in dynamically loaded scripts.

    The language service provides automatic support for some recognizable script loader patterns.

Visual Basic

  • Write asynchronous code in an easy and intuitive way.

    By using the Async feature, you can call asynchronous methods without defining continuations or splitting your code across multiple methods or lambda expressions. For more information, see Asynchronous Programming with Async and Await (C# and Visual Basic).

  • Obtain caller information that assists with tracing and debugging.

    You can obtain the source code file path, source code line number, and member name of the caller to a method. For more information, see Caller Information (C# and Visual Basic).

  • Maintain the simplicity of a For Each loop for a complex list sequence.

    You can use iterators to return each item in a collection one at a time. For more information, see Iterators (C# and Visual Basic).

  • Understand better how your code flows.

    By using the Call Hierarchy feature, you can display all calls to and from a selected method, property, or constructor. For more information, see Call Hierarchy.

  • Define a namespace outside of the root namespace of your project.

    You can use the Global keyword in a Namespace statement. For more information, see Namespaces in Visual Basic.

For more information, see What's New for Visual Basic in Visual Studio 2012.

Visual C#

  • Write asynchronous code in an easy and intuitive way.

    By using the Async feature, you can call asynchronous methods without defining continuations or splitting your code across multiple methods or lambda expressions. For more information, see Asynchronous Programming with Async and Await (C# and Visual Basic).

  • Obtain caller information that assists with tracing and debugging.

    You can obtain the source code file path, source code line number, and member name of the caller to a method. For more information, see Caller Information (C# and Visual Basic).

For more information, see What's New for Visual C# in Visual Studio 2012.

Visual C++

  • Write code that conforms to the C++11 language standard.

    You can use Visual C++ to write code that uses range-based for loops, standard threads, futures, and atomics, and other powerful new features in the standard C++11 language.

  • Create Windows Store apps and games by using C++.

    Use the Visual C++ with XAML development model for Windows Store apps and games and use the Visual C++ component extensions (C++/CX) and other new features to create them.

  • Write faster, more efficient code by using compiler improvements.

    Because of compiler improvements, you can write code that you can compile to run faster on the CPU or execute on multiple processors, or you can write code that you can reuse to target different system configurations.

  • Equip your app to run more quickly and efficiently when multiple processors are available.

    By using improved parallel libraries and new debugging and visualization features, you can enable your app to run better on a variety of hardware.

  • Make your code more robust.

    You can use the updated unit test framework, architecture dependency graphs, Architecture Explorer, code coverage, and other tools to make your code more robust.

  • Equip your app to run faster by using multiple CPUs.

    By using the improved Parallel Patterns Library (PPL) and new debugging and visualization features, you can enable your app to run faster on hardware that has multiple cores.

  • Take advantage of power-efficient GPUs to increase performance.

    You can speed up your data parallel algorithms by using the new C++ Accelerated Massive Parallelism (C++ AMP) library and new debugging and visualization features to enable them to run on GPUs or other accelerators from a variety of vendors.

For more information, see What's New for Visual C++ in Visual Studio 2012.

JavaScript

Important

To find out how to create Windows Store apps in JavaScript, including information about the Visual Studio JavaScript editor and other features, see Develop Windows Store apps using Visual Studio 2012.

For more information, see What’s New In JavaScript.

Visual F#

  • Program directly against rich spaces of data and services, such as databases, web services, web data feeds, and data brokers.

    By using F# type providers, you can focus on your data and program logic instead of on creating a system of types to represent your data. For more information, see Type Providers.

  • Query databases directly in the F# language.

    Use F# LINQ queries to specify exactly the data that you want in the F# language, without writing a database query or a stored procedure. For more information, see Query Expressions (F#).

Managing the application lifecycle

  • Manage the backlog, sprints, and tasks by using agile tools.

    Define multiple teams, each of which can manage their backlog of work and plan sprints. Prioritize work, and outline dependencies and relationships. See who is over capacity, in real time. Update tasks and see the progress within a sprint. For more information, see Collaborate.

  • Engage stakeholders to provide feedback on pre-release software.

    Stakeholders can record action scripts, annotations, screenshots, and video or audio recordings. For more information, see Request and review feedback.

  • Illustrate requirements with storyboards, and link storyboards to work items.

    Build a storyboard from a collection of pre-defined storyboard shapes, capture user interfaces, and link any storyboard or file shared on a network to a work item. For more information, see Storyboard backlog items.

  • Manage enterprise projects by using Microsoft Project and Project Server.

    Manage project portfolios and view status and resource availability across agile and formal software teams. For more information, see Enable Data Flow Between Team Foundation Server and Microsoft Project Server.

Modeling applications

Developing applications and collaborating more effectively as a team

Automating and debugging builds

  • Run, monitor, and manage builds by using an enhanced interface.

    For more information, see Run, Monitor, and Manage Builds.

  • Run automated builds from Team Foundation Service.

    Take advantage of an on-premise or hosted build controller.

  • Define gated check-in build processes that support multiple check-ins.

    Build multiple check-ins at the same time. For more information, see Define a Gated Check-In Build Process to Validate Changes.

  • Run native and third-party framework unit tests in your build process.

    For more information, see Run Tests in Your Build Process.

  • Debug your build process more easily.

    Choose a link in the build results window to view diagnostic logs. For more information, see Diagnose Build Problems.

Microsoft Test Manager

  • Run manual testing on Windows Store apps.

    You can use Microsoft Test Manager to run manual tests to help you identify problems in your Windows Store apps that are running on a remote device, such as a tablet. For more information, see Testing Windows Store apps Running On a Device with Microsoft Test Manager.

  • Conduct exploratory testing.

    From the Exploratory Testing window, you can run tests without being restricted to a test script or set of predetermined steps. For more information, see Performing Exploratory Testing Using Microsoft Test Manager.

  • Include multiple lines and rich text in your manual test steps.

    Test steps can include multiple lines to consolidate related actions within a single test step in your test cases. Microsoft Test Manager now also includes a toolbar that you can use to format the text of your test steps. You can use various formatting options, such as bold, underline, or color highlighting to emphasize key points. For more information, see How to: Create a Manual Test Case.

  • Get the status of your test plans within Microsoft Test Manager.

    This report is available to you from the Plan tab in the center group menu bar of Microsoft Test Manager. From there, you can view Results, which include a report on the status of your test plan. For more information, see How to: Create a Manual Test Case.

  • Clone test plans for new iterations.

    By cloning tests, you can work more easily on different releases in parallel. For example, if you already have a test plan called “Contoso V1 – Milestone 1” and your team decides to make version V2, you can clone the test plan and use it for the V2 source code branch. After cloning the test plans, you and your team can work on both versions of the applications simultaneously. For more information, see Copying and Cloning Test Suites and Test Cases.

ASP.NET 4.5 Core Services

  • Improve page load time when referencing JavaScript and CSS files.

    You can combine separate JavaScript and CSS files and reduce their size for faster loading through bundling and minification.

  • Work with projects that target earlier versions of the .NET Framework.

    ASP.NET 4.5 updates multi-targeting so that you can work with projects that target earlier versions of the .NET Framework.

  • Avoid cross-site scripting attacks.

    Encoding APIs that prevent cross-site scripting have been integrated into the core framework of ASP.NET pages.

  • Write asynchronous web applications more easily.

    Use the new .NET 4.5 async (C# Reference) and await (C# Reference) keywords in combination with the Task type to simplify asynchronous web programming. For more information, see Using Asynchronous Methods in ASP.NET 4.5 and Using Asynchronous Methods in ASP.NET MVC 4.

For more information, see What’s New for ASP.NET 4.5 and Web Development in Visual Studio 2012.

ASP.NET 4.5 Web Forms

  • Write code that’s called directly by data-bound controls.

    In ASP.NET Web Forms, you can now use model binders for data access as you can in ASP.NET MVC. If you use model binders, data-bound controls can call your code directly, like action methods in ASP.NET MVC.

  • Write strongly typed, two-way data-binding expressions in Web Forms data controls.

    By using strongly typed expressions, you can access complex properties in data controls instead of using Bind or Eval expressions.

  • Make pages perform better through unobtrusive JavaScript.

    By moving the code for client-side validation into a single external JavaScript file, your pages become smaller and faster to load.

For more information, see What’s New for ASP.NET 4.5 and Web Development in Visual Studio 2012.

General Enhancements for Web Development

  • Use the most recent web standards.

    The new HTML editor offers full support for HTML5 elements and snippets. The CSS editor offers full support for CSS3, including support for CSS hacks and snippets for vendor-specific extensions to CSS.

  • Test the same page, application, or site in a variety of browsers.

    Installed browsers appear in a list next to the Start Debugging button in Visual Studio.

  • Quickly find the source of rendered markup.

    The new Page Inspector feature renders a webpage (HTML, Web Forms, ASP.NET MVC, or Web Pages) directly within the Visual Studio IDE. When you choose a rendered element, Page Inspector opens the file in which the markup was generated and highlights the source.

  • Find snippets and code elements quickly by using improved IntelliSense.

    IntelliSense in the HTML and CSS editors filters the display list as you enter text. This feature shows strings that match the typed text in their beginning, middle, or end. It also matches against initial letters. For example, "bc" will match "background-color."

  • Select markup and extract it to a user control.

    This feature is a convenient way to create markup for reuse in multiple locations. Visual Studio registers a tag prefix and instantiates the control for you. The selected code itself is replaced with an instance of the new user control.

  • Create and edit code and markup more easily.

    When you rename an opening or closing tag, the corresponding tag is automatically renamed. When you choose the Enter key inside an empty tag pair, the cursor appears on a new line in indented position. Source view has Smart Tasks like Design view.

  • Create CSS more efficiently.

    In the new CSS editor, you can expand and collapse sections, use hierarchical indentation, and comment and uncomment blocks freely. The CSS editor now has a color selector like the HTML editor.

  • Write JavaScript in the JavaScript editor.

    For information about enhancements to the JavaScript editor, see the Code Editor Enhancements for JavaScript section.

  • Deploy web application projects more easily.

    You can import publish settings from hosting providers, specify Web.config file transformations for a publish profile, store encrypted credentials in the publish profile, specify the build configuration in the publish profile, and preview deployment updates.

For more information, see What’s New for ASP.NET 4.5 and Web Development in Visual Studio 2012.

  • Automate validation for frequently used data types.

    You can add new DataAnnotation attributes to properties to automate validation for frequently used data types such as e-mail addresses, telephone numbers, and credit-card numbers.

  • Deploy incremental database updates.

    After you deploy a database with a web project, changes to the database schema are automatically propagated to the destination database the next time that you deploy.

For more information, see What’s New for ASP.NET 4.5 and Web Development in Visual Studio 2012.

IIS Express for Web Development

  • Develop web applications against a server identical to that of IIS.

    In Visual Studio 2012, IIS Express is the default server for web development. IIS Express is a lightweight, self-contained version of IIS that contains all the core capabilities of the IIS web server role.

ASP.NET Web API

  • Easily build and consume HTTP services that reach a broad range of clients.

    Services can be consumed by browsers, mobile applications, tablets, and other devices. Built-in support for content negotiation enables clients and servers to mutually determine the right format for data.

  • Directly access and manipulate HTTP requests and responses by using a modern HTTP programming model.

    Use a clean, strongly typed HTTP object programming model that’s supported both on the server and on the client. The new HttpClient API can call web APIs from any .NET Framework application.

  • Easily extract data from an HTTP request.

    Model binders make it easier to extract data from various parts of an HTTP request. The message parts become .NET objects that Web API actions can use. The ASP.NET Web API supports the same model binding and validation infrastructure as ASP.NET MVC.

  • Enjoy a full set of routing capabilities.

    ASP.NET Web APIs support the full set of routing capabilities in ASP.NET MVC and ASP.NET, including route parameters and constraints.

For more information, see Getting Started with ASP.NET Web API and ASP.NET Web API (Part 1).

LightSwitch

  • Connect to OData data sources.

    Your LightSwitch applications can connect to any Open Data Protocol (OData) data source, including those from the Windows Azure DataMarket. For more information, see How to: Connect to Data.

  • Expose your application data as an OData data source.

    You can expose data from a published LightSwitch web application as an OData feed for use by other applications, taking advantage of LightSwitch features such as authentication and filtering. For more information, see LightSwitch as a Data Source.

  • Assign roles and permissions to security groups.

    If you use Windows authentication, you can assign roles and permissions to any security group in Active Directory. For more information, see LightSwitch Authentication and Authorization.

  • Limit data that the server returns.

    You can define filters that apply across any queries that access your data, even through an association. For more information, see How to: Filter Data in a LightSwitch Application by Using Code.

  • Improve the look of your screens with new controls.

    You can organize screen content by using the Group Box control. You can also display text and data on a screen without data binding. For more information, see How to: Add Static Text or Images to a Screen.

  • Customize the formatting of numbers and dates.

    You can use the new Format Pattern property for numeric and date data types to control the display format of numbers and dates. For more information, see How to: Format Numbers and Dates in a LightSwitch Application.

  • Treat URLs and percentages as data types.

    You can use custom business types to treat a decimal as a percentage and a string as a URL, with built-in formatting and validation. For more information, see Adding a Data Field.

For more information, see What's New for LightSwitch in Visual Studio 2012.

Data Application Development

  • Work with database objects in SQL Server Object Explorer.

    Use the new SQL Server Object Explorer, which resembles Management Studio, to create queries and define database objects. View the column definitions, including primary and foreign keys. For more information, see Connected Database Development.

  • Define tables in the new Table Designer.

    Use the Table Designer to define tables in the SQL Server 2012 format. As you define a table in the graphical interface, the Transact-SQL code is updated in the Script pane. For more information, see How to: Create Database Objects Using Table Designer.

  • Develop and test database applications in SQL Server Express LocalDB.

    SQL Server Express LocalDB is a lightweight version of SQL Server that has all the programmability features of a SQL Server database. SQL Server Express LocalDB replaces SQL Server Express as the default database engine for development. You can upgrade your files or continue to use SQL Server Express if you must use both Visual Studio 2010 and Visual Studio 2012. For more information, see Local Data Overview.

Graphics Tools

  • Add, edit, and compile HLSL shaders more easily.

    You can use syntax coloring, indenting, and outlining when you are coding HLSL shaders, and MSBuild automatically supports the Microsoft HLSL Compiler (fxc.exe).

  • View and modify image assets more efficiently.

    You can use the Image Editor to create, inspect, and modify bitmap and compressed image formats (DDS, TGA, TIFF, PNG, JPG, GIF), and the editor supports transparency and mipmaps. For more information, see Image Editor.

  • Work with 3-D models.

    You can use the Model Editor to inspect standard 3-D model formats (OBJ, COLLADA, and Autodesk FBX). You can also use the built-in 3-D primitive generation and materials to create placeholder art for 3-D games and apps, thereby improving artist-developer workflow. For more information, see Model Editor.

  • Create advanced pixel shaders.

    You can use the Shader Designer, which is a graph-based shader creation tool that provides a live preview of the effect, to create advanced pixel shaders and export them as HLSL code that you can use in apps that are based on DirectX. For more information, see Shader Designer.

Parallel Computing

  • Use C++ AMP to make your code run faster.

    By using C++ Accelerated Massive Parallelism (C++ AMP), you can control how data moves between the CPU and the GPU or other data-parallel hardware and thereby accelerate the execution of your C++ code. For more information, see C++ AMP (C++ Accelerated Massive Parallelism).

  • Debug your parallel apps more effectively.

    Not only can you use the GPU Threads and Parallel Watch windows to debug parallel apps, but you can also use them to evaluate and fine-tune performance gains. For more information, see What’s New for the Debugger in Visual Studio 2012.

  • Customize the data that you use to examine how well your parallel app performs.

    By using the Concurrency Visualizer, you can examine how your multithreaded app performs. In this version, you get quicker access and increased configuration control, and you can add your own custom performance data to the visualizer. For more information, see Concurrency Visualizer.

  • Use TPL dataflow to make your concurrency-enabled app more robust.

    Use components of the Task Parallel Library (TPL) Dataflow library when your code involves multiple operations that must communicate with one another asynchronously or when you want to process data as it becomes available. For more information, see Dataflow (Task Parallel Library).

SharePoint Development

  • Create lists and content types by using designers.

    You can more easily create a list or a content type by using a designer to set up and lay out the contents of the list or content type. For more information, see Creating Site Columns, Content Types, and Lists for SharePoint.

  • Create site columns for SharePoint sites.

    You can more easily create SharePoint site columns, which are also known as "fields," by using an item template. For more information, see Creating Site Columns, Content Types, and Lists for SharePoint.

  • Add Silverlight web parts to your SharePoint projects.

    You can more easily and conveniently create Silverlight web parts by using a project template. For more information, see Walkthrough: Creating a Silverlight Web Part that Displays OData for SharePoint.

  • Publish SharePoint solutions to remote SharePoint sites.

    You can publish SharePoint solutions to remote SharePoint sites, in addition to local SharePoint sites. For more information, see Deploying, Publishing, and Upgrading SharePoint Solution Packages.

  • Increase SharePoint performance by using profiling tools.

    By using tools in Visual Studio, you can identify code and other elements that are slowing down your SharePoint projects and perform other performance profiling. For more information, see Profiling the Performance of SharePoint Applications and Analyzing Application Performance by Using Profiling Tools.

  • Create sandboxed visual web parts..

    You can include visual web parts in sandboxed SharePoint projects, not just farm projects.

  • Create sandboxed solutions more easily.

    When you’re working on a sandboxed solution in Visual Studio, only compatible APIs appear in Intellisense, and a compiler error occurs if you try to use farm-only API calls.

  • Debug JavaScript more easily.

    You can debug JavaScript in SharePoint projects, and IntelliSense is provided when you're coding JavaScript in SharePoint projects. URLs for JavaScript are resolved for visual web parts in sandboxed solutions.

  • Develop SharePoint projects more easily by using streamlined project templates.

    To help streamline SharePoint development, some SharePoint project templates from the previous version of Visual Studio were moved into project item templates. For a full list and descriptions of the project and project-item templates, see SharePoint Project and Project Item Templates.

  • Test your code by using the Microsoft Fakes framework.

    SharePoint projects support Microsoft Fakes, which is an isolation framework in which you can create delegate-based test stubs and shims in .NET Framework applications and test your code by isolating your unit tests from the environment. For more information, see Verifying and Debugging SharePoint Code.

For more information, see What's New for SharePoint Development in Visual Studio 2012.

Office Development

.NET Framework 4.5

For more information, see What's New in the .NET Framework 4.5.

New in Visual Studio 2012 Update 1

  • Ensure that the logos and splash screen for your Windows Store app will look good in a variety of screen resolutions.

    For more information, see Optimizing images for different screen resolutions (Windows Store Apps).

  • Find and troubleshoot memory usage issues in Windows Store apps.

    You can use the JavaScript Memory Analyzer to find memory leaks and to help identify their causes. For more information, see Analyzing memory usage in Windows Store apps (JavaScript).

  • Create code maps from the code editor.

    By scanning code maps that appear next to the code editor, you can easily find your place in your code, navigate around your code, and identify relationships throughout your code. For more information, see Visualize and Understand Code with Code Maps in Visual Studio.

  • Target Windows XP when you build your C++ code.

    You can use the Visual C++ compiler and libraries to target Windows XP and Windows Server 2003. For more information, see Configuring C++ 11 Programs for Windows XP.

  • Coded UI tests for SharePoint 2010 applications.

    By including coded UI tests in a SharePoint application, you can verify whether the whole application, including its UI controls, is functioning correctly. You can also use coded UI tests to validate values and logic in the UI. For more information, see Testing SharePoint 2010 Applications with Coded UI Tests.

  • Web performance and load tests for SharePoint 2010 applications.

    You can verify the performance and stress abilities of your SharePoint applications by configuring lLoad tests to emulate conditions such as user loads, browser types, and network types. For more information, see Web Performance and Load Testing SharePoint 2010 and 2013 Applications.

  • Record diagnostic events for SharePoint 2010 solutions that are running outside Visual Studio.

    By using the IntelliTrace collector, you can save user profile events, Unified Logging System (ULS) events, and IntelliTrace events to an .iTrace file. You can then start to diagnose solutions in production or other environments by opening the .iTrace file in Visual Studio Ultimate. For more information, see Collect IntelliTrace Data Outside Visual Studio with the Standalone Collector.

New in Visual Studio 2012 Update 2

  • Find performance bottlenecks in your HTML, CSS, and JavaScript code.

    You can troubleshoot symptoms like a lack of responsiveness in the UI or slow visual updates by using the UI Responsiveness Profiler. For more information, see Analyzing UI Responsiveness.

  • Create unit test projects for a Windows Phone app.

    You can create unit test projects for a Windows Phone app and run them from Test Explorer. For more information, see Unit testing for Windows Phone apps.

  • Deploy a Windows Phone app at a command prompt.

    You can also add the command to a script or a custom application. For more information, see How to deploy and run a Windows Phone app.

  • Precompile and sign company apps at a command prompt.

    When you build a company app by using MSBuild, you can precompile and sign the app by using a command prompt, and you can add the commands to a script or custom application. For more information, see Preparing company apps for distribution.

For more information, see Description of Visual Studio 2012 Update 2.

New in Visual Studio 2012 Update 3

For more information, see Description of Visual Studio 2012 Update 3.