Windows 8 - the Developer's Take
Written by Mike James   
Tuesday, 13 September 2011

I-Programmer brings you the first news from Build about the way Windows 8 applications will be created from here on in.

 

Microsoft is currently unwrapping the "gift" of Windows 8 for us and the actual hard facts are still being dribbled out as part of a marketing presentation. You can't blame the Microsoft team, but for developers what matters about Windows 8 is not so much what we will code but how we will code.

So what is the shape being revealed piece by piece?

The first thing to say is that there are lots of shiny decorations being pointed out any one of which could make a user go "wow" and want to buy the thing. These are not what matter to developers, however.

The core architecture changes are more or less what everyone has been speculating and while Microsoft is saying that the old ways are not dead-

To quote Microsoft Windows engineer, Aleš Holeček

"We will preserve all of their investments"

but he would say that, wouldn't he.

The key ideas are that now there is the desktop and there is Metro. The desktop is where the old apps live and it is a single tile in Metro. There is a new class of applications -  Metro applications - and these can be built in a number of ways. Windows is now a mobile phone but writ large. On the other hand where is Windows Phone 7 in this new architectural plan? It still uses Silverlight as its main development tool. Is it all change for the mobile environment as well or will the platforms split?

JavaScript will now be a first class Windows language and will be used to create Metro applications along with C#, VB and C++. As C# and VB are managed languages, JavaScript isn't and C++ can be, this is going to be an interesting trick.

 

Windows8system

 

It seems that XAML and HTML will provide the presentation layer for Metro with the managed languages using XAML and JavaScript using HTML.  However the whole lot is built on top of the new WinRT API. Banished, it seems, is the Win32 API which will only be used within the Desktop application world.

If you think that this means that Win32 has gone the way of all APIs that are no longer to be developed, then consider that .NET is also only supported in the realm of the desktop app. Surprisingly, the web browsers and HTML live there too - this really is a sweeping away of the old into a hidden corner to presumably rot quietly way. The final nail in the desktop coffin is the news that the Arm version of Windows will not support desktop applications. So if you want to write an app and you want it to work on any version of Windows then it has to be a Metro app.

Slowly we have to transition from Win32, .NET and Silverlight to HTML/XAML built on top of WinRT. Visual Studio will have better support for JavaScript and HTML and the next version of Expression Blend will output either XAML or HTML.

As you might expect, the Build conference has lots of sessions on Metro and WinRT but none on Silverlight and few on anything that could be considered as "old technology".

It isn't that Microsoft has killed off the old technologies - Win32, .NET, WPF and Silverlight - they have simply been banished into the wilderness that is now the Desktop. In the wilderness they must surely wither because would you now start a project that targeted the desktop using the "old ways"?

You can download Windows 8 and some of the developer tools as ISOs from http://dev.windows.com


If you would like to be informed about new articles on I Programmer you can subscribe to our RSS feed, follow us on Twitter or Facebook or sign up for our weekly newsletter.

 

Banner


Windows 11 Adoption Takes A Downturn
11/12/2024

With Windows 10 End of Life only ten months away, Microsoft is stepping up its campaign to get Windows users to upgrade to Windows 11. But while Windows 11 had been gaining users at a steady rate at t [ ... ]



Raspberry Pi CM5 - Expensive And Undocumented
27/11/2024

So the unexpected has happened - the Compute Module 5 has been launched. But it simply emphasises some problems with adopting the Pi as an IoT device.


More News

Last Updated ( Thursday, 15 September 2011 )