This figure shows a wide range of Windows 8 architectures.
But how many people understand the mysteries of this process? I have made some experiments to find out how this happened for a while.
First, let's look at the process of developing an application in the Win32 era.
It has always been developed by tossing the class library. The DOTNET class library is one step ahead of the Win32 class library and has made some deeper encapsulation. Although DOTNET is more advancedCodeIt is very rich, and its memory-intensive operations have huge performance advantages, making it difficult to give up. However, it is not so pleasant to build a project with a hybrid C ++ class library and a DOTNET class library. P/invoke and C ++/CLI are troublesome.
Let's take a look at winrt.
Oh yeah, there is only one library, winmd Lib. You don't need to worry about the language in which a winmd class library is written. This winmd class library has only one version, and can be executed on Win8 of X86 x64 arm. in the past, it was a headache to deploy multiple platforms after the C ++ class library was incorporated. Now, this does not exist.
Of course, the traditional C ++ lib can certainly be used. Once used, you have to consider the problem of a package of platforms. Since Win8 is a multi-platform system, do it on your own.
Let's talk about DirectX. The first thing we care about when playing games is the image and image APIs. Unfortunately, DX does not currently have a winmd version.
Microsoft provides the traditional C ++ lib of three platforms, including dx11, which means C ++ is required for games. Of course, various open-source engines will certainly emerge, games can be called in any language, including Js.
Only this time, Microsoft has released too many changes, making too many choices. A little overwhelmed.
WP7 created a completely DOTNET framework environment, and the response was good. Win8 immediately offered winrt.
Migration from the DOTNET framework to winrt is not a long span. The biggest change is the addition of C ++ and DX.
The bad news is that the situation of xNa integrated desktop, mobile phone, and home machine has become very confusing. After all, Microsoft will surely have an xNa winmd. Maybe it should be named dx, in the end, a set of graphical interfaces is provided for three PCs, home machines, and mobile phones.
But how long will this transition period take? during this period, developers who are troubled by multiple technologies and different versions will become angry. We will wait and see if Microsoft can provide a better way to smoothly transition.
The good news is that the huge C ++ DX game group can be quickly transformed into Win8's Metro version, and the mainstream game engine can be turned around for metro in just one small turn.
Do not use silly decisions to hurt developers' minds. Win8 will certainly succeed.