Windows Runtime
| Développé par | Microsoft |
|---|---|
| Environnement | Windows 8, Windows 8.1, Windows Phone 8.1, Windows 10 |
| Type | Framework |
| Licence | Propriétaire |
| Site web | http://www.microsoft.com |
Chronologie des versions
Windows Runtime ou WinRT est l'interface de programmation (API) proposée par Microsoft pour le développement d'application sur Windows 8 et Windows RT. WinRT permet le développement d'application en C++/CX (Component Extensions, un langage basé sur le C++), et en langages managés en utilisant le C# ou VB.NET. Il est aussi possible d'utiliser JavaScript ou TypeScript. Les applications WinRT supportent les architectures x86 et ARM, de plus celles-ci fonctionnent dans une Sandbox ce qui apporte une plus grande sécurité et stabilité[1],[2].
WinRT est en grande partie une API non managée. Celle-ci est essentiellement basée sur des API COM, de ce fait, celle-ci peut s'interfacer assez facilement avec différents langages. Cependant à la manière de .NET, les définitions de l'API sont stockées dans des fichiers ".winmd" utilisant le format de métadonnées ECMA 335 moyennant quelques modifications[3]. Ce format de meta-données permet une simplification des appels WinRT depuis .NET en comparaison avec la relative complexité des P/Invoke pour Win32.
Les applications de style Métro (Metro-style applications en anglais) était le nom utilisé par Microsoft pour parler des applications développées pour WinRT, mais depuis aout 2012, à la suite d'un litige potentiel avec une société du même nom, Microsoft utilise et pousse les développeurs à faire de même, les appellations suivantes : Style Windows 8, Style Modern UI et Applications Windows Store[4].
WinRT est aussi utilisé pour le développement d'applications Windows Phone 8.1, via Windows Phone Runtime[5], un sous ensemble de Windows Runtime.
Histoire
WinRT a été présenté pour la première fois lors de la conférence BUILD de Microsoft le [6], celle-ci est aussi incluse dans les préversions de Windows 8. Actuellement seuls Visual Studio 2012 et ultérieur permettent de choisir WinRT comme plateforme de développement.
Interfaces de programmation
Plusieurs langages de programmation peuvent être utilisés pour développer des applications WinRT, les plus courants étant C/C++, .NET (C# et VB.NET), ainsi que JavaScript.
C++
WinRT est une plate-forme de développement native, elle peut donc supporter n'importe quel code C++, ainsi il est possible pour un développeur C/C++ de réutiliser des bibliothèques existantes.
Deux possibilités sont offertes au développeur, WRL (une bibliothèque du style Active Template LibraryATL) ou C++/CX (qui ressemble à C++/CLI)
.NET
Le Framework .NET ainsi que la CLR (Common Language Runtime) sont intégrés dans WinRT.
WinRT supporte donc le développement d'application Metro en C# et VB.NET. L'interface étant écrite en XAML. Bien que non officiellement supporté, il est possible d'écrire des applications dans les autres langages .NET. Les applications développées avec un langage .NET utilisent le Windows Runtime XAML Framework basé sur les API native WinRT, c'est un "remplaçant" du XAML utilisé dans Silverlight ou WPF qui lui est basé principalement sur la CLR et du code managé.
JavaScript
HTML5 et CSS sont utilisés pour le développement de l'interface et JavaScript (ECMAScript 5[7]) pour le développement général de l'application.
Notes et références
- ↑ Abel Avram, « Details of the Windows Runtime »,
- ↑ Brian Klug & Ryan Smith, « "Microsoft BUILD: Windows 8, A Pre-Beta Preview" »,
- ↑ Miguel de Icaza, « "WinRT demystified" »,
- ↑ Vincent Hermann, « Microsoft n'utilisera plus l'appellation Metro », sur pcinpact.com, (version du sur archive.org)
- ↑ « "Windows Phone API reference" »
- ↑ « "Keynote #1 BUILD 2011" »
- ↑ (en) « JavaScript (Windows) », sur microsoft.com (consulté le ).
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.