Dans mon tout premier post sur googland.fr, à l’occasion de la conférence Build Windows, je donnais mon premier sentiment sur le nouveau système que Microsoft va proposer en 2012: Windows RunTime. Presqu’un an plus tard, alors que je prépare mes sous pour acheter un notebook, ma faveur va encore à Chrome OS.
Tablet 600: La 1e tablette Windows RT de Asus.
- Qu’est-ce que Windows RT?
Lorsque Microsoft a présenté le système Windows 8 aux développeurs, il faisait apparaître dans sa pile applicative 2 parties distinctes:
1. Celle héritée de Windows 7 (Desktop Apps),
2. Celle s’appuyant sur Windows RunTime (Metro style Apps).
Pile applicative du système Microsoft Windows 8.
Les WinRT APIs font interface avec le hardware Intel x86 ou ARM, alors que Win32 ne gère que les architectures x86. Une machine sous ARM ne peut logiquement pas faire tourner une application Win32 (Excel, Photoshop…).
Pour clarifier un peu les choses, Microsoft a décidé de créer une version de Windows 8 dédiée aux machines ARM et limitée à la pile WinRT. Au départ, il l’a nommé Windows on ARM, puis finalement Windows RT.
Ainsi le consommateur achetant un produit estampillé Windows RT se rend bien compte qu’il n’aura accès qu’à des applications Metro dessus. Enfin, j’espère… que c’est clair pour tout le monde.
- Quelles applications sous Windows RT?
C’est compliqué de parler d’un système qui n’est pas encore commercialisé, mais la description de la plateforme permet d’anticiper sur le type d’applications qu’il sera possible de télécharger depuis le Windows Store.
Au dessus des WinRT APIs, nous avons le fameux trio HTML/CSS/Javascript. Autrement dit, Windows RT sera capable de faire tourner de belles applications web écrites en HTML5. Mozilla entre autres nous prouve qu’il est possible de faire énormément de choses avec cette technologie, au point de préparer BootToGecko, un système exclusivement centré là-dessus. Jusque là, Windows RT s’apparente beaucoup à Chrome OS puisqu’on le sait tous, Chrome a pour fonction première de faire tourner correctement ce qu’on appelle les Rich Internet Applications.
Aperçu d’applications web modernes sur BootToGecko.
Il y a ensuite la possibilité d’utiliser les langages C/C++/C#/VB/XAML, autrement dit le moteur de RDA (Rich Desktop Applications) Microsoft Silverlight. Cette technologie, proche sur le principe de Adobe AIR et de Oracle JavaFX, permet de développer des applications connectées modernes tirant partie des capacités natives de la machine. Je n’en ai personnellement jamais utilisée et je galère pour trouver des vidéos de démonstration potables sur Youtube là dessus. Microsoft est très probablement en train d’utiliser cette technologie pour porter sa suite Office sur Metro.
Windows RT, c’est en quelque sorte un Silverlight OS (pour ne pas le réduire à un Internet Explorer OS). Si je cherche un équivalent du côté de Chrome OS, je pense inévitablement à la technologie Native Client.
Présentation Microsoft de Windows On ARM.
- Chrome OS ou Windows RT?
Je vous ai déjà présenté mon choix au tout début de ce post, il est très personnel, mais je vais essayer de l’argumenter un peu.
Chrome OS et Windows RT se ressemblent beaucoup. Les deux systèmes sont modernes, orientés vers le web et peuvent accueillir des applications très puissantes mais qui pour l’instant n’existent pas. Du côté de Google, la technologie Native Client peut devenir open-source un jour (notamment avec PNaCl) et permet de porter du code C/C++ existant dans un nouveau compilateur. Du côté de Microsoft, la technologie Silverlight permet l’équivalent.
Je suis toutefois impressionné par Native Client, notamment sur l’aspect sécurité, au point de faire aujourd’hui aveuglément confiance lors de l’installation d’une application utilisant cette technologie.
Là où Windows RT apporte un plus par rapport à Chrome OS, c’est indéniablement sur l’aspect tactile. Je ne vous cache pas que je suis un grand fan des produits Asus et que la machine qui me ferait craquer serait un Transformer Book sous Chrome OS, exactement dans le genre de la Tablet 600 sous Windows RT, présenté récemment au Computex:
Tablet 600: La 1e tablette Windows RT de Asus.
Lorsqu’on voit Chrome for Android ainsi que Chrome for Windows 8, je me dis qu’il n’y a qu’un tout petit pas à franchir pour rendre l’interface de Chrome OS tactile.
A quoi cela servirait ? Simplement à décrocher l’écran, s’installer sur son canapé et consulter GMail, GReader ou GBooks au doigt. Ces applications web sont d’ores et déjà prêtes pour le tactile. Mais bon, si Google préfère laisser ce marché à Android, je m’en passerai. Il priverait toutefois Chrome OS de cette dualité qui rend Windows RT attractif.
Enfin, il faut savoir que seul Internet Explorer sera disponible comme navigateur sur Windows RT. Un choix difficilement justifiable selon moi, qui n’a pas tant de conséquence que ça puisque IE10 est un navigateur très moderne. Personnellement, Windows RT est disqualifié à cause de ça, mais ce n’est que mon avis.
Avec le nom windows marqué dessus, ça devrait marcher, mais si les conseillers expliquent bien les limitations côté applications, surement qu’ils reviendront à windows x86 …
Et je ne pense pas que quelqu’un conseillera chrome os malgré son store qui se remplit de jours en jours et a déja, mine de rien, pas mal d’applications de ce que je vois en ce moment ! Il y a un chiffre trouvable pour le nombre d’apps en ce moment sur le chrome store ?
De toute façon, bon article bien complet merci.
Contrairement à iOS ou Android, Windows RT permet de mettre côte à côte 2 applications. Si elles sont bien écrites, elles se redimensionnent correctement et l’expérience peut être agréable je pense. C’est une belle nouveauté et un vrai manque du côté d’Android pour en faire un système desktop multitâches.
Depuis l’introduction d’Aura, il est en revanche très facile de faire de même sous Chrome OS. Le système de fenêtrage est furieusement inspirée de Windows 7, avec même quelques nouvelles gestures. Tu ouvres 2 applications, les places côte à côte et d’un seul geste tu peux ajuster la proportion occupée par chacune des 2 fenêtres (exactement comme sur Metro pour ce dernier gesture). Les web apps bien écrites adaptent automatiquement leur affichage.
Il n’y a pas énormément de choses qui m’attirent dans les tablettes. Par exemple, je ne supporte pas de jouer sur un écran tactile et le clavier tactile m’irrite énormément. En revanche, je reconnais que cela apporte un grand confort sur toutes les applications de lecture.
Je n’ai pas l’impression qu’iOS, Android et même Windows RT soient parvenus à trouver ce parfait équilibre pour être LE système des machines Transformer.
Peut-être qu’un dual-boot Android / Chrome OS ferait sens finalement. Ou alors, il faut arrêter de s’obstiner à vouloir combiner 2 usages dans la même machine. Je crois que je vais finalement acheter à la fois un chromebook (450$) et une Nexus Tab (250$). Je n’ai plus qu’à mettre de côté 700$ :D.
Tu as probablement raison, toute l’industrie (fondeurs et constructeurs) trouve un intérêt à pousser Windows en avant, car c’est le plus gros marché à renouveler.
L’avenir de Chrome OS ne tient pas selon à son succès auprès des particuliers. J’aimerais beaucoup qu’il investisse les entreprises pour y simplifier la vie de tout le monde. Il y a certaines organisations (les banques) qui mettent beaucoup d’argent au niveau de la DSI pour le développement de master pour leurs postes de travail. Mais chez la plupart des autres, ça vire au cauchemar l’administration IT et engendre un stress incroyable.
Enfin, il y a aussi le Google Apps Marketplace où on peut trouver des web apps pour professionnels, mais évidemment payantes.
Le lecteur PDF aussi marche sans Native client. (il annonçait une refonte du lecteur PDF avec Native client mais ça ne semble pas en place)
https://developers.google.com/native-client/community/application-gallery
Mais j’avoue que les jeux comme Cordy et Running Fred m’intéressent moins… J’ai toutefois testé AirMech (qui n’est pas finalisé) et il est assez impressionnant et a l’air très fun.
Quant aux lecteur PDF et Office, il y a un flou autour de ça. A un moment, il fallait activer le flag Native Client pour pouvoir lire les documents Office hors-ligne. Puis Google a lancé une mise à jour et Native Client n’était plus nécessaire. Bizarre… Au final, sur ces portions de codes greffés dans le système, c’est assez difficile de savoir à quel point Native Client est impliqué.
Une autre précision sur les langages : Le C et le C++ sont directement compilé en code machine pour un max de performances. Le C# et le VB sont des langages managés, qui s’éxécutent dans une machine virtuelle, ce qui réduit grandement les problèmes de compatibilités. Un exemple d’application codé en C# dans l’environnement .net : paint.net.
http://www.journaldunet.com/developpeur/tutoriel/theo/060601-theo-difference-langages-compiles-interpretes.shtml
A moins de me tromper, je crois bien que le Javascript ne peut être qu’interprété et le C++ que compilé.
Windows interprète (à la volée) le Javascript.
Native Client est un compilateur qui produit un exécutable (fichier .nexe). En cliquant sur un lien, on télécharge l’exécutable et le moteur de Chrome l’exécute. C’est très proche, si ce n’est identique, au principe de fonctionnement de la machine virtuelle Java Web Start (téléchargement et exécution d’un fichier .jar). Chrome OS n’interprète pas le C++.
Cette fragmentation sera-t-elle enrichissante ? Ou créera-t-elle une certaine confusion ?
http://www.infos-du-net.com/actualite/dossiers/272-7-windows8-microsoft-metro.html
Je comprend qu’un développeur poura coder son appli en language web, mais que ça donnera bien une application standard, et donc compilé en bytecode ?