Visual Studio 2017 First Look

Visual Studio 2015 used up lots of disk space, all on drive C:, regardless of where and what one chose to install it. Visual Studio 2017 is a lot more modular. Visual Studio 2017 also appears to have integrated Xamarin as well as third-party tools.


The Windows section of the installer offers three ways to develop for Windows.


Universal Windows Platform development targets Windows 10, Windows Server 2016 Desktop Experience, Windows 10 IoT Core, and Windows 10 Mobile. It supports both .NET languages and C++. I am guessing Windows 8 support is long forgotten for good reason.


Desktop development with C++ targets all versions of Windows that support Win32 applications down to Windows XP.


.NET desktop development targets all versions of Windows that support .NET Framework 4.0 and above, i.e. Windows Server 2003 and Windows Vista and above. It does not target but can also be used for versions of Mono that support .NET Framework 4.0 and above on Mac OS, GNU/Linux and other platforms supported by Mono.


The Web & Cloud section offers a motley collection of features, some of which target the Web, some of which target Microsoft's cloud Azure, and some of which target all sorts of other things.


ASP.NET and web development provides a Web framework for .NET. It targets Internet Information Server on Windows. It does not specifically target but might work with Mono.


Node.js development appears to be a JavaScript environment of some kind.


Office/SharePoint development contains tools for Office and SharePoint development, which Microsoft apparently consider "Web" and "Cloud".


Whereas Azure development actually is Microsoft's cloud and Visual Studio provides utilities and build tools.


And I assume Data storage and processing is a collection of programming tools for SQL Server and Azure Data Lake.


Mobile & Gaming provides tools for mobile and game development, as the name might suggest.


Mobile development with .NET is really Xamarin and contains .NET libraries to support statically-linked targeting (with the Xamarin libraries) of iOS, Android and Universal Windows Platform.


Mobile development with JavaScript I guess supports mobile development with JavaScript using Apache Cordova.


Game development with C++ contains C++ libraries for game development for DirectX and the Unreal engine.


Game development with Unity contains Visual Studio support for the Unity game development framework for .NET.


Mobile development with C++ targets native iOS and the Android NDK.


Other Toolsets is everything Microsoft didn't want to sort into the above categories, although it would fit.


Visual Studio extension development is the SDK for Visual Studio itself.


.NET Core cross-platform development targets all .NET Core platforms including Windows 10, Windows Server 2016, Windows Server 2016 Server Core, Windows Server 2016 Nano Server, Windows 10 IoT Core, Windows 10 Mobile, GNU/Linux and Mac OS. It presumably also works with Mono platforms.


Linux development with C++ targets GNU/Linux using a Microsoft compiler and C runtime library.

All-in-all Visual Studio 2017 appears to be a return to CP/M times at Microsoft. Instead of supporting Microsoft platforms only, Microsoft have returned to trying to develop the best developer tools for Microsoft and non-Microsoft platforms. (After all, Microsoft have started as a developer tools company.)

Microsoft do not provide an ISO or even an offline installer. But such a beast can be created by running the provided online installer in a special mode.

Microsoft explain here how to create an offline installer for Visual Studio 2017.

tl;dr vs_enterprise.exe --layout C:\vs2017offline --lang en-US creates a Visual Studio 2017 offline installer in c:\vs2017offline. Replace vs_enterprise.exe with the appropriate name for the installer you have.

 © Andrew Brehm 2016