|
-
Jul 10th, 2012, 12:19 AM
#10
Re: How does Metro work?
WinRT (short for Windows RunTime) is the new framework that is part of Windows that runs 'Metro' apps.
To target WinRT, you have several options depending on what you are familiar with already as a developer, or possibly, what you are looking to accomplish.
If you currently write .NET, then you will be able to write Metro apps. If you have done any WPF, Silverlight or WindowsPhone 7 development, you will be in better shape, because you will know a bit about XAML which is the XML/HTML looking markup that makes up the UI now. The old top/left location/anchor system of WinForms is gone. But in reality, it has been gone for a long time, as WinForms stopped being developed some time ago.
Microsoft basically built .NET classes to consume the WinRT API, to allow you to program for it using what you already know about .NET, and to also use lots of (but not all of) the existing classes in the framework.
They also did the same thing for Javascript and HTML5, so web developers who are more comfortable there, or perhaps want to write something that can be brought to various platforms with little retooling, can write Metro apps that target WinRT because Javascript/HTML5 is a first class supported language there.
If you wanted to make a 3D app (most likely a game), then you can target Direct3D via C++. There is no way to use C# or VB to make Direct3D based games, and there is nothing like XNA right now. There are some 3D effects you can do using VB or C#, but nothing on the scale of what you can do with Direct3D.
When it comes to ARM versus non ARM Windows 8, the reality is when it comes to Metro apps, it does not matter, because they WinRT API is the same across both. If you write an app for Metro, it can run on ARM or x86/x64.
Metro is a little more sandboxed than what you would be used to with WPF or WinForms. There are certain requirements, and permission restrictions, more inline with the set of permissions you would see a "standard user" having in Windows XP or Windows 7. Limited access to the file system and limited abilities to control other system wide settings.
You can of course also still write WinForms or WPF apps that run on the desktop. These apps however will not run on ARM based versions of Windows 8, because that version will only support the desktop for running desktop versions of Microsoft Office and Internet Explorer. 3rd party desktop programs can not be run on ARM based Windows 8.
I also believe Metro apps must be approved through the AppStore process. I am not sure if x86 versions of Win8 will allow you to install metro apps from other locations, but I know the ARM version is set to be tightly controlled to avoid poor performance from badly written apps.
I hope to get a few articles about metro up soon in VB, showing how you can get some stuff done. Right now I have been working on programming live tiles.
Last edited by kleinma; Jul 10th, 2012 at 12:22 AM.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|