jeudi 5 avril 2012

Les standards du Web en 2012

Comme observé dans un article précédent, le format SWF étant promu à une évidente disparition, observons quels sont désormais les standards qui nous restent pour créer des environnements interactifs fixes et/ou mobiles et les logiciels qui pourraient faciliter l'édition de ces standard :
  • HTML/CSS3
  • Javascript
  • SVG
  • Canvas
  • Air
  • Objective-c
  • Java
HTML5/CSS3
Il permet de réaliser des mises en page sémantiques propres avec du style. Mais n'offre point de grandes options d'interactivité ni d'animation réellement exploitables car subordonnées aux contraintes des navigateurs (mise en cache limitée à 5Mo/site, partage de la mémoire RAM limitée au navigateur, propriétés d'animation et d'interaction souvent non prise en charge par l'un ou l'autre des navigateurs). Compatible à long terme avec tous les navigateurs. Les mises en forme peuvent également être compilées dans des applications fixes et mobiles pour accompagner les développements réalisés en langage natifs. C'est le B-A-BA du Web aujourd'hui.

Javascript
Il introduit le calcul dans la page Web et permet d'apporter une interactivité, une logique, une intelligence face au comportement de l'utilisateur. Il peut également animer les objets et être compilé comme le HTML5. Son utilisation est désormais incontournable dans tout projet Web non compilé souhaitant apporter une plus-value.

SVG
C'est une extension de la norme HTML5 qui utilise du Javascript pour animer des objets structurés sémantiquement et vectoriels. Comme on utilise ici des données vectorielles, ce principe est donc adapté à la cartographie et aux interfaces compliquées emboitant de nombreuses connexions. Mais comme c'est du vectoriel, c'est également très gourmand en calcul dès lors que le nombre de données augmente. On utilise ce langage uniquement pour des cartes interactives, des interfaces, ou des organigrammes.

Canvas
C'est également une extension de la norme HTML5 qui créer une fenêtre dans la page HTML et utilise aussi le Javascript pour animer. Mais, contrairement au SVG, les objets animés sont des bitmaps ou en tous cas, ce qui en résulte est un bitmap. Le rendu est équivalent à celui obtenu à partir d'une vidéo. Cette technique est donc adaptée aux animations riches graphiquement mais fera fi de leur relation sémantique. Et à la différence d'une vraie vidéo, elle est ici rendue en temps réel. Cette technique est donc idéale pour la création de jeux 2D et 3D interactifs, de photomontages, et les web documentaires graphiques. Les web documentaires basés davantage sur un principe d’organigramme ou de carte interactive utiliseront plutôt SVG. Canvas est enfin le standard amené à plus long terme à gérer l'affichage et les interactions d'objets en 3D.

Air
Air est le format post-Flash et qui permet de compiler dans un seul objet autonome et stable, quel que soit son environnement d'exécution et toutes plateformes confondues : du HTML, des CSS, du Javascript, du SWF et tous type de médias (vidéo, 3D, sons, images, vecteurs). C'est donc à priori le format idéal, si ce n'est qu'il requiert un player peu répandu et ne permet pas une organisation vraiment sémantique des données. Ses performances sont correctes bien que les formats natifs (Objective-C, C#) prévalent sur la fluidité des animations bien entendu. Adobe a annoncé un partenariat avec Unity, solution de développement de jeux vidéos en 3D, afin de porter les jeux sur toutes les plateformes via Air. Mais attention, les jeux se programment non pas en AS3 mais en Javascript/C#/BOO dans Unity. Pas d'espoir de lier réellement les deux plateformes donc et encore moins de les customiser dans Flash Pro. Cette option permettra néanmoins de retrouver des jeux 3D sur tout le Web et les tablettes. Air, en plus des applications spécifiques de bureau, sera donc désormais associé au portage simplifié de la 3D.

Objective-c
Dérivé du C, Objective-c est le langage de la plateforme iOS (Apple mobile) qui permet de développer des applications connectées et fluides pour iPhones, iPods et iPads et uniquement pour ces plateformes.

Java
Dérivé du C, Java est le langage de développement d'applications pour les plateformes mobiles Android et BlackBerry RIM, mais aussi pour certaines applications de bureau.

C#
Dérivé du C, C# est le langage de programmation utilisé pour les plateformes Microsoft mobile.

Pour en savoir plus sur SVG vs Canvas, lisez aussi ce brillant article :

http://blogs.msdn.com/b/davrous/archive/2011/05/20/introduction-aux-apis-graphiques-d-html5-svg-amp-canvas-2-4.aspx

Pour connaître la vérité sur HTML5 :
http://www.alsacreations.com/actu/lire/1324-mythes-et-verites-html5.html

Pour connaître enfin les outils disponibles en 2012 et qui utilisent chacun de ces standards, consultez également l'article suivant :
http://bloc-notes-arzhur.blogspot.fr/2012/04/les-outils-de-communication-digitale-en.html

Pour mieux comprendre la fragmentation des formats et le rôle du langage C dans les développements, lisez cet article :
http://bloc-notes-arzhur.blogspot.fr/2012/04/lorigine-de-la-fragmentation-des.html

Aucun commentaire:

Enregistrer un commentaire