Reputation: 3285
Having read this article the author seems to think that big time fragmentation is due to occur and apps developed for Windows Phone 7 will not be easily ported up to Win 8 and in fact due to silverlight/.net being axed in favor WinRT for metro style apps it leaves Windows Phone in a very bad situation.
I was wanting to learn to develop for Windows Phone but now I am uncertain in respect to which path to take. Looks like investing time on HTML5 and Jscript and using that to write apps for WP7 would be wiser than going the silverlight\XAML route. Also the XNA WP framework is tied in/extends on the silverlight framework with WP7 does it not ? So XNA is also not sure thing.
I understand that WinRT will have its own XAML runtime/module, so XAML skills are definitely not going to be made redundant but .Net/Silverlight is not there and a new API for WinRT will be there. The approach of coding for metro and library class names etc. I hope for Microsofts sake are going to be near identical to .net framework, otherwise there's going to be a lot of pissed .net developers.
I must say however if the Window Phone platform does adopt a new WinRT derived framework, what will happen to all of the existing apps? Could they be easily ported?
Upvotes: 1
Views: 178
Reputation: 27225
I don't think anyone outside of Microsoft can properly answer your question at the moment.
The most glaring error in the article you linked is the suggestion that WinRT is not compatible with .NET. This is incorrect. WinRT is an API, which is accessible from native code, managed .NET code, and from JavaScript.
It's worth noting that HTML5/JS apps created for Metro won't automatically work on the web and vice-versa. (Where "the web" includes browser-based apps for other platforms).
Basically: you can use your language and coding model of choice, and re-use most of your "business logic" code. But you have to re-implement most of your interface and and platform-specific stuff.
This is pretty much what you would expect when moving between any platform.
It is essentially the same transition, whether you go from HTML5/JS for the web to HTML5/JS for Metro, or you go from C#/XAML for Silverlight to C#/XAML for Metro.
Finally, here is a much better article that talks about the features and limitations of WinRT.
And just to talk about XNA for a moment:
XNA is a completely separate API to Silverlight. Originally on WP7 they were totally incompatible. Although now you can mix code and share rendering surfaces between the two. And on Silverlight 5 (desktop) there is a 3D rendering API that has the same interface as XNA (but isn't truly XNA).
XNA isn't supported by Metro because Metro enforces a sandbox that limits you to the WinRT API. (Whereas XNA is built on top of DirectX 9 and various other APIs.)
Upvotes: 3