In early December 2017, Microsoft released major updates to Visual Studio 2017. For a full list of improvements and fixes, you can check out the Visual Studio 2017 version 15.5 Release Notes.
Let's have a look at some of the major improvements and new additions to Visual Studio 2017.
Solution load times for large C# and Visual Basic projects have been cut by half; also, the time to switch between debug and release modes has been reduced dramatically. Project templates unfold 40x faster than before. Adding, deleting, and renaming files and folders in .NET Core projects also is much faster.
The Visual Studio debugger got a new addition, named step-back debugging or historical debugging. Step-back debugging takes a snapshot of your application on each breakpoint and debugger step automatically, thus enabling you to go back to a previous breakpoint to view its state.
The new update of Visual Studio 2017 contains added features that helps to identify and manage secrets like Web service keys and database connection strings. Visual Studio 2017 also contains a preview of support for credential scanning that reads through your source files to prevent you from unintentionally publishing key secrets into your source repo.
Xamarin Live Player
Xamarin Live Player enables developers to continuously deploy, test, and debug their apps by using just Visual Studio and an Android or iOS device. The latest update of Visual Studio 2017 adds support for Android emulators that enables developers to preview real-time XAML changes in the Android emulator without the need to re-compile or re-deploy.
Setup and Install
The Visual Studio 2017 Installer now can generate Windows restore points during installation. The Add & Remove Programs feature on PCs now will contain entries for each Visual Studio installation, which can be modified and uninstalled individually.
C# Language Features
C# now supports the following language features:
- Support for the Span<T> type
- Readonly struct modifier
- In parameters/ref readonly returns
- Private protected access modifier
- Non-trailing named arguments
Team Explorer Updates
In the latest updates to Team Explorer, you now are able to work with Git submodules and worktrees. Visual Studio 2017 also can now treat Git submodules and worktrees like normal repos.
In Visual Studio 2017 15.5, the following F# tooling support features for .NET Core SDK projects are now supported:
- File > New Project creates new .NET Core console apps, .NET Standard libraries, and .NET Core unit test projects
- Project-to-project references now are supported
- Support for Web SDK projects
- Right-click Publish tooling with Web SDK projects
Visual C++ Standard Template Library
Improvements to the Standard Template Library include:
- Deprecating Vestigial Library Parts
- Removing Allocator Support In std::function
- shared_ptr<T>, shared_ptr<T[N]>
- Deprecating shared_ptr::unique()
- Removing Dynamic Exception Specifications
- Splicing Maps and Sets
- Clarifying insert_return_type
Visual Studio keeps on growing and improving based on the technology landscape. In the latest release, there have been a lot of improvements and fixes. Can't wait for the next one!