Windows Phone 8.1 for Developers–Choose your Weapons
This blog post is part of a series about how Windows Phone 8.1 affects developers. This blog post details how we can use different languages for creating apps and is written by Alexander Persson from Jayway (@alexanderpersso) and was originally published here.
In this post we will try to explain what the languages are good at and when you should pick one over the other. But first we will give a short description of the two new ways to create native apps.
C++ has long been the language for maximum performance and if written correct it is unstoppable. Now we are able to combine the power of C++ with XAML to create awesome apps.
Platform interoperability and third party libraries
As said before C++ is able to produce code with great performance, but it comes at a cost – knowledge of the language. Without knowledge of C++ your app could easily be draining memory and soon run into OutOfMemoryExceptions.
Pros and cons
So what’s the pros and cons of the different options we now have?
It’s impossible to list pros and cons of the languages. Some will say that the garbage collector in C# is an advantage of C# compared to C++ but another might say it is not as they want full control of their objects. Different languages has different set of features that will suit different kind of apps.
Before you start your next project discuss with the team about what language to use in this particular case and set your pros and cons when determining what language to use.
What to choose?
I won’t say that any language is better or worse than the other, it depends on what your goals are, how the team looks like and many other things.
But a few thing are sure, now we are able to choose from multiple languages when developing a Windows Phone app and we are able to select the one that will give us the best benefits for our app. It also opens up for more developers to be able to develop native app for Windows Phone as they can develop in their preferred language and utilize the skills they already possesses.