|Visual Studio 2015 Preview|
|Written by Mike James|
|Monday, 17 November 2014|
If you compare the latest Visual Studio 2015 preview with almost any other version you will be shocked by what you find in it. Visual Studio used to be specific to Microsoft technologies. Now it has gone cross platform in a big way.
As well as making Visual Studio 2013 more or less free to use, Microsoft has released a Preview of the next version of Visual Studio - and it contains some real surprises. For example, who would have thought that an Android emulator would be part of VS? Well it is in VS 2015. In fact, many of the new features are to do with cross platform development.
An important question is why is Microsoft supporting this technology?
The reason for Cordova support is that it allows web apps to run on Windows Phone and Windows 8.1 as well as on iOS and Android. By supporting Cordova and providing an Android emulator that really works, Microsoft could get some additional apps for its own OS. The idea of being able to target the full range of devices all from Visual Studio is very attractive.
The ability to build native apps for Android and iOS in C# is less obviously attractive. Visual Studio 2015 comes with new project templates form Xamarin that target iOS and Android. The only problem is that if you want to make use of the full power of the Xamarin system you have to move from the free starter kit that is included to a monthly paid subscription.
For most projects this isn't going to be a huge problem, but this isn't a system that lets you cross platforms without some effort. The UI libraries are different and so are the exposed native APIs. Xamarin estimates that you should be able to use about 75% of your code on each of the platforms. The real benefit of this approach is being able to use C# - which many programmers consider to be significantly better than Java, Objective-C or Swift.
The C# approach to iOS and Android is one that might become significantly more attractive in the near future if the cross platform .NET core gets build. This might provide even more code communality and allow app development for Windows, iOS and Android.
C++ programmers have also gone more cross-platform with the Clang and LLVM toolchain. This lets C++ programmers target Android and, in the near future, iOS. Not full apps because the UI needs more than just a suitable compiler. The target is mainly native DLLs and static libraries. These can be integrated into full Android apps using Xamarin and even Java. You can also target full Native-Activity apps but these aren't as common because this approach is only needed for games and graphics.
The ability to create cross platform libraries in C++ is obviously useful to Microsoft because these can be used under Windows, but the ability to create Android-only projects is less obviously an advantage.
Perhaps we are seeing the start of a more general colonization of Android by Microsoft.
There are lots of other small, but valuable, new features. However, the inclusion of .NET 4.6 with an upgraded WPF and the RyuJIT has to be mentioned. New versions of C# and VB are being rolled out as described in a previous news story. ASP.NET 5 unifies all of the fragmented approaches to creating a web site that have been invented by Microsoft into one big ball of fun - Web Forms, MVC, Web API and Azure Mobile Services.
Finally it is worth mentioning that VS 2015 has a companion in the form of a new version of Blend.
The future of Blend, Microsoft's UI design tool, has long been in as much doubt as the further development of WPF. Blend now has better integration with VS and XAML IntelliSense, debugging and more. What it doesn't have any more is HTML design support - this has been dropped for reasons that don't seem to fit with the multi-platform Visual Studio.
Visual Studio is a good IDE and it is welcome that Microsoft seems intent on making it better. At the moment the cross-platform strategy is a bit like a patchwork quilt and a long way from the ideal of 100% code reuse. But it is, once again, heading in the right direction.
To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin, or sign up for our weekly newsletter.
or email your comment to: firstname.lastname@example.org
|Last Updated ( Sunday, 30 November 2014 )|