This article is more than 1 year old

Microsoft, Google cosy up in the Skia lodge: 2D lib added to build tools

Plus: C# Mac development bunged into Visual Studio

Microsoft's Miguel de Icaza, who joined the Windows giant earlier this year with the Xamarin acquisition, has announced new features for cross-platform development using Visual Studio, Xamarin Studio and C#.

Xamarin brought a set of C# libraries, tools and compilers to Microsoft, enabling developers to target iOS, Android and Mac using shared code. Xamarin's original concept was that only non-visual code should be shared, with the GUI (graphical user interface) layer created separately for each platform.

All that changed in May 2014, when Xamarin Forms was announced. Xamarin Forms uses a flavor of XAML, an XML language also used by Microsoft, to define a GUI that works on all target platforms. Xamarin Forms wraps native controls in order to retain the look and feel of each platform, but enables more code to be shared.

Today at Microsoft's virtual .NET event, dotnetconf, de Icaza announced plans to use SkiaSharp, a cross-platform C# library for 2D graphics based on Skia, an open-source project sponsored by Google and used for Android, Chrome and Chrome OS, as well as Mozilla Firefox.

SkiaSharp targets Android, iOS, Mac, Windows, and UWP (the Windows 10 Universal Windows Platform), as well as Apple's tvOS. It is a better and more robust solution than .NET's System.Drawing graphics API, said de Icaza.

Microsoft will use Google

Microsoft will use Google's Skia project as the basis for its cross-platform C# graphics library

Microsoft also plans to extend Xamarin in Visual Studio to support desktop Mac applications as well as iOS and Android. Currently Xamarin.Mac can only be used when developing on the Mac.

At the same time, de Icaza announced plans to extend Xamarin Studio, a Mac IDE (integrated development environment), to better support ASP.NET Core, Microsoft's open source web application framework. This means developers working on a Mac with C# will be able to create, test and debug a server backend for mobile applications as well as the mobile app itself.

Microsoft now has three IDEs, observed de Icaza: Visual Studio on Windows, Visual Studio Code which runs cross-platform, and Xamarin Studio on the Mac. The company is trying to figure out how to share its own tooling code in order to avoid writing everything three times. There are plans to use the same language services as Visual Studio Code for rich editing support for languages such as TypeScript, JavaScript, Go and Python, and to use the same debug protocol. In addition, MSBuild will be used on the Mac as well as on Windows for configuring and executing the build process.

Along with these future plans, de Icaza announced the release of Xamarin Studio 6.0, the first release to use Roslyn, Microsoft's .NET compiler platform, for features like code completion and refactoring. Xamarin Studio has been revamped as a Mac-only IDE, with a new dark theme, support for C# 6.0 and F# 4.0, F# templates for Xamarin Forms, and tvOS support. Xamarin Studio is now a 64-bit application.

Although Microsoft's primary purpose in acquiring Xamarin was to support cross-platform development, a side-effect is better support for developers working on the Mac but using C# and, Microsoft hopes, deploying to its Azure cloud platform or integrating with cloud services like Office 365. ®

More about


Send us news

Other stories you might like