Is Visual Studio on the Mac really Visual Studio 2017 on Mac OS?
Blog|by Mary Branscombe|13 August 2017
When the preview of Visual Studio for Mac was announced at Microsoft’s online developer event, Connect, in 2016, it was based on the existing Xamarin Studio for Mac OS and it only for developing mobile apps. The release version announced at Build 2017 is supported for use in production, and it includes several new workloads. “Now it’s mobile plus cloud and ASP.NET. You can create new .NET Core apps, debug them and deploy them straight to Azure. We also have gaming with Unity support,” says Nat Friedman, CEO and oc-founder of Xamarin and now corporate vice president of mobile developer tools at Microsoft.
You can still build mobile apps for iOS, Android, tvOS, watchOS and Mac OS, with Xamarin and C#, and that now includes building mobile backends in ASP.NET Core. Xamarin Forms support is already in preview for Mac OS (and in development for GTK# for Linux), so your ‘mobile’ app can also act as a desktop app. But web developers can also now use Visual Studio for Mac for .NET Core, ASP.NET Core, HTML5, CSS3, and JavaScript. You can also use it for Unity development and debugging on Mac; there’s a new Unity-specific solution explorer view and syntax highlighting for script.
And yes, that includes developing for HoloLens. “Developers who use the Mac can stay in an environment that they’re more comfortable in and still build those kind of applications and target what I think is the strongest attempt at mixed reality,” confirms Friedman.
Just like Visual Studio on Windows, there are multiple versions of Visual Studio for Mac; the free Community edition, the Professional version that includes subscription benefits, and the Enterprise edition (all of which are available to download). You’ll need to be online throughout the installation; an offline installer is promised for a later release.
Visual Studio for Mac will be getting updates every six to eight weeks, just as Visual Studio for Windows and Visual Studio Code do. The first new features are already available as previews: deploying and debugging .NET Core and ASP.NET Core code in Docker containers, building, deploying and debugging Azure Functions (event-based serverless programming) and building C# and Xamarin code for IoT devices like Android Things.
Other areas that the team are looking at including adding more languages, using the same open source Language Server Protocol that’s used by Visual Studio Code, and making the extensions frameworks for Visual Studio more similar on Windows and Mac.
Don’t think of this as just a new name for Xamarin Studio. Yes, Visual Studio for Mac is based on the MonoDevelop core, and it will replace Xamarin Studio for Mac users in time, but that core has been extended significantly to support working with .NET Core and Unity and deploying to Azure. And much of that code comes from Visual Studio on Windows.
Even before Microsoft bought Xamarin “we had already begun to share a lot of really important code with Visual Studio,” explains Friedman. “The biggest example was Roslyn; we replaced our own autocomplete engine with Roslyn and got much better results. Now we’re sharing more code with Visual Studio and with Visual Studio Code. All the work that we’re doing to deploy from Visual Studio for Mac to Azure, and to Azure Functions, to remotely debug production code in Azure, to use Connected Services; that’s all shared code with Visual Studio.”
“Additionally, to support the non-mobile workloads like ASP.NET Core we needed autocomplete, and syntax highlighting when you’re editing HTML, JavaScript and CSS. a lot of that also is also borrowed from Visual Studio Code and Visual Studio. When you use a Visual Studio login, the Microsoft login code is shared.” And just like MonoDevelop, when code from Visual Studio is used in Visual Studio for Mac, it’s also being made open source.
Over time, Visual Studio for Mac will share even more code with Visual Studio on Windows. “We’re just looking more and more opportunities because there’s no need to repeat work,” Friedman points out. It’s also high-quality code that’s easy to reuse, says Xamarin co-founder and now Microsoft distinguished engineer Miguel de Icaza.
“The code for Visual Studio is just incredibly well architected. It is a design jewel – the core components are independent of the UI, and were already cross platform.”
The goal isn’t to have identical development environments on Windows and Mac so much as to have an IDE that feels as if it belongs on each platform, and suits what developers want to do there, Friedman explains.
“If you look at what an IDE is, it’s an editing surface that’s used to type code, and then there’s a bunch of other tools, and enclosing all those is a windows management framework. Our goal is to build an IDE that really feels native on Mac, with native Mac controls and layouts and UI metaphors. Lots of the window management chrome will not be shared, it will always be native; but within that chrome, the underlying engine, the debugger, the code completion and obviously tooling like compilers and so forth shared. So, you can expect to see more of the cosmetic elements be native to each platform, and the engine and the smarts being shared.”
He notes that the code sharing has already gone the other way; all the Xamarin functionality that’s in Visual Studio for Windows now came from Xamarin Studio.
So yes, you’ll be able to do desktop app development with Visual Studio, for Mac but that will make more sense for desktop Mac OS apps rather than Windows apps (unless they’re UWP apps using Xamarin Forms). After all, you’d have to spin up a virtual machine or use a cloud service to test those Windows apps.
How about Visual Studio for Linux? This is the new Microsoft after all. It’s not currently planned, but De Icaza enthusiastically points out the feedback site where developers can vote for the possibility.
Contact Grey Matter
If you have any questions or want some extra information, complete the form below and one of the team will be in touch ASAP. If you have a specific use case, please let us know and we'll help you find the right solution faster.
By submitting this form you are agreeing to our Privacy Policy and Website Terms of Use.
Mary Branscombe
Mary Branscombe is a freelance tech journalist. Mary has been a technology writer for nearly two decades, covering everything from early versions of Windows and Office to the first smartphones, the arrival of the web and most things in between.
Related News
Seamless Data Protection: The Perfect Marriage of Veeam and Wasabi
In today’s data-driven world, businesses face the critical challenge of ensuring the safety and accessibility of their ever-expanding volumes of data. As organizations increasingly turn to cloud solutions for data storage and backup, the combination of Veeam and Wasabi emerges...
Safeguarding Success: The Case for Acronis and the Advantages of Purchasing Through Grey Matter
In the fast-paced and interconnected world of business, data has become the lifeblood of organisations. The ability to securely store, manage, and recover data is crucial for business continuity and success. Acronis, a global leader in cyber protection, offers a...
Why use RAD Studio Architect Edition?
Elevate your development capabilities with RAD Studio 12 Architect, the most advanced RAD Studio edition with the broadest feature set. RAD Studio 12 Architect can enable enterprise-level data services and integrations with Embarcadero’s homegrown tools and services, like Aqua Data...
Intel product transition information
Intel upgrade options Intel® Parallel Studio XE users, please consider upgrading to Intel® oneAPI Base & HPC Toolkit to take advantage of the latest features including functional and security updates. Intel® System Studio and Intel® oneAPI Base & IOT Toolkit...