Thursday, February 21, 2013

Choosing between WinRT and Windows 8 app

As the market share of Windows RT OS based devices is picking up, it’s kind of a tough call (somewhat confusing to many people) to create the road map for their product and application i.e. which one to choose (Windows RT OS or Windows 8 OS) and why? And is there really any difference between these?

Window 8/RT is an OS, designed for devices running on ARM Architecture
WinRT is a framework/runtime for application development on Windows RT

Windows 8 desktop applications and WinRT native applications are two different breeds targeted for different devices and you need a different design approach for each.

Windows 8 desktop application: It is essentially a desktop app built using .Net Framework and WPF. It will run without any issues on previous Microsoft OS (windows 7, Vista ) as long as there is support for .Net framework on these OS.  What is interesting is that this desktop app will not run on Windows RT mobile devices like Microsoft Surface with Windows RT.

WinRT apps or Windows Store app:  It is a modern Windows 8 style app (previously aka Metro style) built to run on Windows RT OS, targeted for devices (e.g Microsoft Surface) with ARM Architecture.  Typically these apps either come pre-packaged with Windows RT devices or can be downloaded from Windows App Store.  Idea is to have a consistent experience across different tablets from different device manufactures.

Now having said that, both types of application are going to stay in the market and it’s totally dependent on the business need, where you want to spent the money.

When to - Choose Windows RT 
  1. Most of your application users are going to be on mobile devices (ARM based).
  2. You want the best of both worlds i.e  ability to run the same app on x86 based devices like laptops and desktops running Windows 8 and on Windows RT mobile devices.
  3. Reach wider audience, by putting it on Windows App store, you would reach markets you might not have ever been able to reach before.
  4. You are creating a new app and you do not have any legacy code/ app.
  5. You have data on the cloud, and you want to create connected application with anytime, anywhere access
Choose Windows 8

    1. Most of your users are going to work on Windows 8 and will use mouse and keyboard for most of the time.
    2. You need to support previous Operating Systems like Windows 7 and Windows vista.
    3. You have legacy .net based code (yeah .net becomes legacy now for WinRT) that you want to reuse to bring down the development cost.

        No comments: