March 7th, 2017

Visual Studio 2017: Productivity, Performance, and Partners

John Montgomery
Corporate Vice President

Today we released Visual Studio 2017. Start your download and read on to learn more about some of the highlights of this release. For the complete list of changes in the release, check out the Visual Studio 2017 release notes. Some of the things I would like to highlight are:

Fundamentals: Productivity and Performance

Improved startup and improved project load. Multiple enhancements come together to make Visual Studio 2017 start up faster than Visual Studio 2015. Solution load times are shorter, and build performance is faster, particularly for C++ projects as Ankit Asthana wrote on the VC++ blog. Check out this post by Dan Taylor on improved overall Visual Studio responsiveness that leads you into a deep dive on these improvements.

Enhanced Navigation. Visual Studio 2017 dramatically improves code navigation, from “Go to All” to Find All References to Indent Guides. For example, Find All References used to display its search results as a flat list in the Results Window. Visual Studio 2017 colorizes the results and provides custom grouping, sorting, filtering, and searching to help you rapidly home in on the specific reference you were looking for. But most powerful is Go to All (ctrl+T or ctrl+,), which has undergone a complete transformation. Go to All is a fast, complete search for any file, type, member or symbol declaration in a solution. Icons at the bottom of the search bar allow you to filter your results by group or adjust the scope of the search. You can also customize settings like placement of the search bar, a live preview of the files containing the highlighted result, and additional file information for each result, by clicking the gear icon in the bottom-right corner.

go-to-all

Keyboard Shortcuts for GoTo

Go To All Go To Line Go To File Go To Type Go To Member Go To Symbol
Shortcut Ctrl+T or Ctrl+, Ctrl+G Ctrl+1, F Ctrl+1, T Ctrl+1, M Ctrl+1, S
Query Prefix No prefix : f t m #

Load files without needing a solution. One request we heard from customers was to be able to edit files without needing to open a project or solution. We listened and are happy to bring you a solution (wordplay mildly intended): in Visual Studio 2017, you can open and work on any file for a long list of languages from C# to C++ to Ruby to Go. For a full list of all capabilities available to you read this blog post on open any folder in Visual Studio.

load-files

IntelliSense filtering. IntelliSense now provides filters to quickly narrow down that member you’ve been looking for. Filtering helps you get to what you need without having to wade through many, many types to get to it.

intellisense

Language improvements: refactorings, style analyzers, and more. There’s more here than we can easily fit into a short paragraph. We’ve added new C# language refactoring commands that help you modernize your code to the latest standard. New style analyzers and support for EditorConfig let you harmonize coding standards across your team. You can edit XAML while your WPF or UWP application is running and see changes in real-time. The C++ compiler and standard library are updated to enhance support for C++11 and C++14 features. Lastly, a new language service for TypeScript and JavaScript, provides support for the latest standard JavaScript features and provides rich type inference across both languages.

CMake support for C++. Support for CMake is now available in Visual Studio 2017. You can start coding by directly loading your CMake projects in Visual Studio. It is easy to switch between configurations provided by CMake and CppProperties.json file. Further configuration is also supported via CMakeSettings.json file that sits in the same folder as CMakeLists.txt file. For an overview of CMake support see the Visual C++ Team blog or watch this 10-minute CMake Video.

Linux support for C++. Visual C++ for Linux Development is a popular extension which is now part of Visual Studio 2017. To learn more about Linux development with C++ watch this video.

Live unit testing. Live unit testing, as the name suggests, tells you in real time if your unit tests will pass or fail because of the edits you just made to your code, without leaving the code editorin. Check out this blog post to learn more about live unit testing in Visual Studio 2017.

live-unit-testing

Run to Click. Most of us use temporary breakpoints. Run to Click is much slicker. Now while you’re stopped at a break state under the debugger, when you hover your mouse over a line of code you’ll see the Run to Click glyph. Click on the glyph and execution continues to and halts on that line.

run-to-click

Exception Helpers. We’ve added exception helpers, so you can immediately see the root cause of an exception with instant access to inner exceptions in a compact, non-modal dialog. Additionally, you can now exclude breaking on exception types thrown from specific modules by clicking the checkbox to add a condition while stopped at the thrown exception.

exception

Small and lightweight installation. We made it easier to get up and running with Visual Studio 2017 with our new installer. The smallest installation is just one-tenth of the size of the previous version, and it installs in just a minute or two. We make it easy for you to install just the frameworks and tools you need to get up and running quickly.

5-Star Mobile Applications

Xamarin Forms Previewer. One of the most time-consuming parts of development is the build and run cycle – the time between writing a line of code and seeing it execute. Real-time feedback makes development faster, easier, and more fun for developers. The Xamarin Forms Previewer renders a live preview of a page side-by-side with the XAML markup, allowing you to see your user interface come to life in Visual Studio as you type.

Improved Xamarin Forms XAML IntelliSense. When you open any XAML document for Xamarin Forms in Visual Studio 2017, you will now greatly improved IntelliSense. The new IntelliSense supports bindings, custom properties, custom controls, converters, and much more.

Connected Services. The new Connected Services experience in Visual Studio 2017 makes it much easier to connect your mobile application to cloud services such as Azure Mobile Apps data storage and authentication . Adding a service to your project will add all required dependencies and any required initialization code to your mobile targets.

The first Connected Service we are providing for mobile developers enables you to connect your app to an Azure App Service backend, providing easy access to authentication, push notifications, and data storage with online/offline sync. This feature also allows you to create a new App Service directly from Visual Studio and have it provisioned without having to visit the Azure Portal.

Cloud Development

.NET Core. Visual Studio 2017 now supports building .NET Core 1.0 and 1.1 applications. .NET Core, which includes ASP.NET Core and Entity Framework Core, is Microsoft’s open source framework for building cloud and server applications and microservices for Windows, macOS, and Linux. It is fast and lightweight: on the Tech Empower web benchmark ASP.NET Core scores in the top 10 fastest web frameworks ahead of Java servlets, Node, Ruby, and PHP.

dotnet-core

Simplified container support. Container development automates the repetitive tasks of setting up and configuring development environments. No longer do developers have to install complex software on their machines in order to duplicate their production machines, instead relying on a simple file that pulls in dependencies as a packaged container. Visual Studio 2017 supports building containerized applications on both Windows and Linux. .NET Core and .NET applications can be containerized during creation or after creation with a simple right-click gesture and can be run and debugged inside the container during local development.

container-support

Azure App Service support. Azure App Service provides hosting on ASP.NET and ASP.NET Core and Visual Studio has great support for publishing and debugging applications on App Service. Visual Studio 2017 now expands that support to hosting .NET Core containerized applications in App Service. .NET and Visual Studio 2017 make container development easy.

azure-app-service

For additional details check out the latest posts on .NET Blog.

DevOps

Visual Studio 2017 improves many aspects of working in DevOps environments, from improvements to version control to improvements to the Developer Analytics tools to a preview of the ability to configure a CI/CD pipeline directly from within Visual Studio. Of particular interest are some of the improvements in Visual Studio’s Git support. We’ve added new Git features to Visual Studio that allow you to do more of your end-to-end workflow without leaving the IDE. You can easily view the diff for outgoing commits, perform a force push to complete a rebase or push an amended commit, remove your upstream branch, and continue patch rebase from Visual Studio. Additionally, because we moved to git.exe–which allows us to provide the most up-to-date features–we support SSH, respect your config options, and show in Team Explorer exactly what you see in the command line.

Most interestingly Visual Studio also includes tools not just to perform DevOps on your source code, but on your database configuration as well, thanks to the inclusion of the Redgate Developer Tools Core Edition. To extend Visual Studio 2017 DevOps capabilities to SQL Server database development, install the Data Storage and Processing workload and you’ll get:

  • Redgate SQL Search. Redgate SQl Search is included with all editions of Visual Studio 2017, increases your productivity by helping you quickly find SQL fragments and objects across multiple databases.
  • Redgate ReadyRoll Core. Redgate ReadyRoll Core is included with Visual Studio Enterprise 2017, helps you develop migration scripts, manage database changes using source control, and safely automate deployments of SQL Server database changes alongside applications changes.
  • Redgate SQL Prompt Core. Redgate SQL Prompt Core is included with Visual Studio Enterprise 2017, helps you write, format, and refactor SQL code. You can write SQL more quickly and accurately with the help of intelligent code completion. SQL Prompt autocompletes database and system objects and keywords, and offers column suggestions as you type. This results in cleaner code and fewer errors because you don’t need to remember every column name or alias.

Additionally, your Visual Studio Enterprise subscription comes with six months of access to WhiteSource Bolt for open source vulnerability management and license checking, and to Parasoft for service virtualization. Check out the new subscriber benefits post for more details.

The Visual Studio Ecosystem

Many customers extend Visual Studio with solutions from the Visual Studio Marketplace. With today’s announcement, we have over 100 partners simultaneously shipping their extensions with the release, making over 700 extensions available to use with Visual Studio 2017.

One of the more popular extensions is Microsoft’s Productivity Power Tools. Over the last year, we’ve been reconfiguring the Power Tools to be a discrete set of extensions, and today we’re making many of them available in Visual Studio 2017.

vs-marketplace

 

Also, today we’re making available a preview of the Python Tools. We wanted to ensure that you have access to the Python tooling, as we are finishing up the full localization to enable us to publish them in a future minor update to all interested Visual Studio 2017 users.

Try it out and please give feedback

By now, Visual Studio 2017 may have finished installing for you. If it has, great! I’d like to address two questions we get asked a lot:

  • Can I install Visual Studio 2017 alongside Visual Studio 2015? Yes. Visual Studio 2017 works side by side with these previous versions of Visual Studio: Visual Studio 2012, Visual Studio 2013, and Visual Studio 2015. Visual Studio 2017 can’t run side by side with an RC or preview version of Visual Studio 2017 or Visual Studio “15”.
  • Can I install Visual Studio 2017 on top of a Visual Studio “15” Preview or Visual Studio 2017 RC? If you currently have Visual Studio 2017 RC or Visual Studio “15” Preview installed on your machine, you should see an ‘update’ button in the new installer. Click that and you will be good to go.

If you’re looking for the data science workload that was in VS 2015, it will be coming in a future update including R support.

If you have further questions, read the Visual Studio 2017 FAQ for other commonly asked questions. Want to know more about compatibility, check out Visual Studio 2017 compatibility and Visual Studio 2017 system requirements. Also, be sure to read this article to learn about offline installations.

Visual Studio 2017 has a lot of new and improved features for you to try. For the complete list of what is included in this release, along with some known issues, check out the Visual Studio 2017 Release Notes.

As always, we welcome your feedback. For problems, let us know via the Report a Problem option in the upper right corner, either from the installer or the Visual Studio IDE itself. Track your feedback on the developer community portal. For suggestions, let us know through UserVoice.

Finally, check out Visual Studio 2017 Launch Event to see members of the engineering team demo the product, and tune in on March 8 for a full day of live training.

Author

John Montgomery
Corporate Vice President

John is Corporate Vice President of Program Management for Developer Tools and Services at Microsoft. He is responsible for product design and customer success for all of Visual Studio, Visual Studio for Mac, Visual Studio Code, .NET, C#, C++, F#, VB, JavaScript, TypeScript, Java, Go, Node.js, Python, Engineering Systems, User Experience Design, Customer Research, Windows tooling, and Azure tooling. John has been at Microsoft for 17 years, working in developer technologies the whole time.

0 comments

Discussion are closed.