Visual Studio 2019 Features, Enterprise, Extensions and Remote Debugging Woes
Visual Studio 2019 has been out about 6 weeks now and in this article I'm going to present both the best features to upgrade for, as well as my pick of my favourite extensions and I'm also going to cover woes around debugging in 2019.
New Improved Search - The main search has been made a lot more like what you'd expect in tools like Resharper with Ctrl + Q availible to quicksearch from the keyboard. All classes and code are in this search so you can quickly navigate to files. Sadly it's does support camel case searching like Resharper does.
Refactorings - There's a load of new reactorings added in this version availible from Ctrl + including support for new C# features.
Code Cleanup - New profile based options have been added for cleaning up code and standardizing your code across projects/the solution. A good step but it's nowhere near as comprehensive as Resharper.
Dashboard - A new dashboard that's more focused on getting started or resuming a project and some general UI tweaks have been added.
Live Sharing - Another plugin but now integrated in 2019 allows for Live collaboration of code with others over the internet. This is great for remote works as you can esentially pair program to fix issues without being physically together.
Code Reviews - Allows for Code Reviews to be handled directly in Visual Studio 2019. Again not directly part of 2019 and require a plugin https://marketplace.visualstudio.com/items?itemName=vsideversioncontrolmsft.pr4vs but does add PR features in to VS. This is great for being able to see the code directly in VS with context and the entire code file instead of the limited fragments in Azure DevOps. The one downer is there's no way currently of finisihing a PR with a merge so you still have to do this in Azure DevOps.
Debugger Improvements - Long overdue, the ability to search inside an object that your watching in the debugger so you can find data within an object/collection.
Snapshot Debugger - This is built in to VS 2019 and allows to snapshot the application execution in the cloud and then debug it. Great for debugging Integration on the DXC or Azure without affecting the user who's using it (I.E a QA in a test cycle) https://www.youtube.com/watch?v=5ODiPOiNzMk
Here is a little summary of the benefits of using Enterprise 2019 over professional
Dependency Validation - Allows seniors to create a dependency validation diagram that enforces coding standards to not access layers against the architectural guidelines. I.E WebApplication cannot directly access the Data project and if a developer does the solution will not build.
Code Clone - Allows for the detection of code clones where the same code has been repeated.