No announcement yet.

Developing Windows Store applications - What has changed to .NET development?

  • Filter
  • Time
  • Show
Clear All
new posts

  • Developing Windows Store applications - What has changed to .NET development?

    I have been very comfortable in writing .NET apps for a number of years, but obviously with Windows 8 comes a new set of APIs for the new kind of Windows 8 apps that reside within the Windows Store. Luckily, you can still use the languages you know and love - whether that's Visual Basic or C# - but Microsoft also brings support for developing apps using JavaScript too! And yes, they will be the same - completely native Windows Store apps.

    So, how do I develop Windows Store apps?

    Well this thread isn't a tutorial for developing Windows Store apps particularly, but to explain some of the changes I've learned about and the benefits of being able to choose alternative languages to use for developing Windows Store apps. In the case of JavaScript, the JavaScript code would be the code logic and HTML/CSS would be used for structuring the controls and other elements on the app itself. Of course, in the case of VB or C#, you use an XML-like markup called XAML (pronounced Zamel). All controls and other objects on your app will be listed in such a XAML file, which is linked to applicable code behinds (i.e. C#/VB code-behind logic). You can also use XAML to declare event handlers and set names for the controls and other objects on your app, so you can call its methods, properties, etc. within your code-behind.

    All of this reminds me fairly well of ASP.NET Web Forms web application development.

    Is there an entirely new API?

    Of course, all Windows Store apps are entirely different, with different user interface elements and environment in which these apps run. All of these APIs are part of the Windows Runtime. You can get an entire API reference for Windows Runtime for C#, JS and VB here.

    How do Windows Store apps work?

    There are three modes in which your Windows Store app can run in Windows 8 - full screen, snapped or filled. The full screen mode is when a user opens your app and has no other app on either side of the screen. Snapped and filled are where your app is snapped to 1/3 and 2/3 of the screen area, respectively. As a result, your app will need to be able to readjust its content area to fit these smaller boundaries if an end user using your app decides to snap your app to accommodate another side-by-side. In some situations, this is easy but in other cases you'll need to make compromises as to what content is essential and what is not.

    All Windows Store apps cannot be installed and run unless they are made available within the Windows Store. There are rules as to what is permitted in the Windows Store, and I'm sure there are power users, developers and users that do not like this restriction because it means getting your apps through a store where Microsoft approves the apps available through the Windows Store. Until very recently, Microsoft did not permit any mature games to be made available in the European Windows Store. This is because Microsoft has a policy of prohibiting adult apps to be made available in the Windows Store which naturally "ends up disqualifying games that would be ESRB Mature," Antoine Leblond, Microsoft corporate vice president of web services said to Gizmodo.

    In respect to Windows Store apps, there are definitely more limitations (which, I suppose, can be considered restrictions) in contrast to traditional Windows apps that run on the desktop - and of course - you can run traditional Windows apps on Windows x86 devices running Intel or AMD processors. Any ARM-based devices running Windows RT are restricted to Windows Store apps only.

    What's the difference between Windows 8 and Windows RT?

    Windows RT is the ARM-compatible variant of Windows 8. Microsoft promised ARM support for Windows 8, and they delivered this through Windows RT. For more information, read our guide on the differences between Windows RT and Windows 8 Pro.