WinRT for zero

Describes the Metro application platform in Windows 8.

With the Metro/Modern UI, Microsoft retains Apple's lessons in its own way and wants to completely change the model of its operating system. On the one hand, the installed applications will have to be downloaded to the Microsoft online store (AppStore), on the other hand, their programming will take place on a completely new platform - WinRT (Windows Run Time) and a touch interface.

Diagramme du modèle de programmation WinRT

AppStore will allow Microsoft to take a percentage of software is also not very good news for developers. In addition, it will be more difficult to distribute your programs.

The below summary will show that WindRT sounds the voice of a certain freedom for developers, according to the model initiated by Apple, while offering new opportunities for those who agree to enter the game.

WinRT replaces .NET and Silverlight

Silverlight is a framework that includes a subset of .NET and is wearable. WinRT is planned to run only on Windows 8. It is a platform designed from the ground up with no interoperability issues, making it high performance. But even this puts Windows 8 in competition with other operating systems without the advantage of applications, at least on tablets.

In fact, the .NET API, or rather a subset, will always be present in WinRT. But this will no longer work the same way due to asynchronous mode and sandboxing.

WinRT runs on the client

Unlike .NET, which can be installed on a server, WinRT is a consumer of web services, but not a provider. Therefore, Microsoft will continue to develop conventional server systems.

Several types of interfaces are supported

Modern UI is a touch interface, but you can also use a mouse and keyboard. WinRT is responsible for supporting these devices and connecting them to application functions.

HTML 5 becomes native in Modern UI

The browser is one of the Modern UI applications, so the HTML 5 application can run not only on this interface, but also on other operating systems. However, Microsoft is leaning towards using the term "native HTML 5," which means that the use of HTML 5 in Modern UI is related to Windows 8, the application will not be wearable. The files are distributed by Microsoft to help implement these HTML applications for Modern UI, and since they interact with the WinRT API, although they will not work on other systems in the HTML standard 5

All applications are asynchronous

This is a problem that is not taken into account in the classical environment because local execution speed does not make it decisive, but can appear in some cases: the user will never have to achieve that one task is completed in order to run another. In the case of some graphics programs, this is useful.

Asynchronous mode is not even optional, as is the case with Ajax (it is enough to activate the flag to switch to synchronous). This is automatic and depends on the delay: from a certain time allotted by the system to respond, the action becomes asynchronous and the user takes over. This is the end of the rubble. Programmers will have to get used to asynchronous programming and see how F # works for viewing.

Applications run in a sandbox

That is, each application has its own runtime with its own memory and cannot interfere with others. If a program is blocked by an error in the code, this does not affect the system or other programs .

Projections allow you to create versatile components

Microsoft projection is a way to use the API. It can be compiled, interpreted, or both in the case of C #. It is also a language-specific binding interface. The system itself determines the appropriate projection, and this will offer a single platform for different types of applications: XAML applications with different languages, HTML applications and JavaScript.

The advantage of such automatic projections is that components built in one language (for example, C #, C++) can be used directly by other languages ​ ​ (C #, C++, HTML 5 and JavaScript). In addition, the creation of components has been simplified.

See also