Évolution du développement web : standard, valide, multiplatteforme et multinavigateur
Par Olivier Gendrin le samedi, novembre 24 2007, 22:21 - Réflexions - Lien permanent
Via l'ami David, je découvre la vidéo d'annonce d'Android, le système d'exploitation pour téléphones mobiles de Google. Et une information m'a fait tilter : c'est webkit qui servira de moteur par défaut pour tout ce qui relève de la navigation web. Or webkit est le moteur de rendu du navigateur Macintosh, Safari.
Donc faisons le point. Nous avons :
- Internet Explorer 6 (vieillissant et heureusement sur le déclin), Internet Explorer 7 et Firefox qui se partagent le marché des ordinateurs de bureau (ils sont ont des parts de marché globalement équivalentes, on est pas à 5% près) ;
- Opéra qui est leader sur le marché des navigateurs de téléphones portables (mais qui n'a que quelques pourcents de parts de marché. Il est aussi le navigateur de la Wii de nintendo, par exemple) ;
- Safari qui est le navigateur présent sur les deux choses tendances du moment : l'Iphone (et l'Ipod Touch — si vous me cherchez un cadeau pour Noël…), poussé par le rouleau compresseur Mac (vous vous souvenez du lancement de l'Iphone, ou de l'Ipod ?), et maintenant Android, poussé par le rouleau compresseur Google ;
- il y a
près de 3 milliards d'utilisateurs [de téléphones portables] aujourd'hui, 1 milliard utilisant l'accès Internet
; - les dernières versions des navigateurs respectent tous à plus de 90% les standards actuels (HTML 4.01 et CSS 2.1, voire SVG 1.2 tiny) ;
- la version mobile de Safari, que j'ai eu l'occasion de voir sur un Iphone, est très très intelligente, et permet pratiquement d'utiliser les feuilles de style screen des sites web (le zoom dans la page web est fabuleux).
De tout ceci, nous pouvons dire :
- Il est suicidaire pour un développeur web de ne pas utiliser les standards ;
- il sera bientôt suicidaire de ne pas tester un site web sous IE6, IE7, Firefox, Safari, et Opéra, sur un ordinateur et sur un téléphone mobile, au moins en phase de recette. Le web s'est libéré d'Internet Explorer il y a quelques années, il est en train de se libérer de l'ordinateur et de l'écran ;
- il va être temps de s'intéresser très sérieusement au standard SVG, le seul navigateur qui ne le supporte pas du tout étant Internet Explorer (et je suis certain que c'est en préparation dans IE8) ;
- il est nécessaire de connaître un ou deux frameworks de développement pour javascript, qui permettent de s'affranchir des différences d'implémentation des navigateurs les plus courants (les autres navigateurs sont condamnés à imiter les navigateurs déjà en place, tout comme Firefox à implémenté certains comportements buggés d'IE) ;
- si vous êtes étudiant en développement web, vérifiez ce que vous apprennent vos professeurs, vous avez sûrement déjà plusieurs trains de retard ;
- vous auriez dû assister à Paris-web 2007, car ce problème est éclairé par les conférences de Dominique Hazaël-Massieux (les slides de la conférence de Dominique sont sur le web), de Christian Heilmann (Slides de Chris), de Daniel Glazman ( Slides de Daniel), et d'une manière plus lointaine, de Denis Boudreau (Slides de Denis) et de Stéphanie Booth (Slides de Stéphanie) — et là je résiste à le tentation de vous mettre toutes les conférences… —.
Bref, le web sera de plus en plus multiplatteformes, il va donc y avoir un besoin de plus en plus important de validité des développements (donc des sites web), de clarté des spécifications des standards (bon courage aux groupes de travail du W3C, j'y reviendrais), et de dialogue entre les équipes d'implémentation pour avoir un web consistant (et dans ce domaine, je crois qu'Opéra avance à grands pas dans l'implémentation de HTML 5, alors que Webkit avance dans celle de CSS 3. Ils sont donc en train de se placer en position de force quand à l'implémentation des standards à venir).
Commentaires
Webkit est aussi le coeur html de Air (ex Apollo) chez Adobe et sur certains mobile Nokia. On va en manger du webkit ... et c'est bien !!!
De retour de Paris web, l'idée nous à pris de créer un salon "Web mobile" sur Alsacréations ;-)
forum.alsacreations.com/l...
Je n'ai pas eu le temps d'en parler avec Dominique Hazaël-Massieux lors de Paris Web, mais je suis embêté avec cette notion de navigateurs embarqués.
Je connais un site tout-CSS, plutôt bien foutu (sisi), et qui foire lamentablement avec IE sur Windows Mobile, parce que la conf d'IE ignore superbement les media="handheld".
Webkit, de ce que j'ai vu de l'iPhone, utilise lui aussi les CSS media="screen". Quelle pérennité aux bonnes pratiques qu'on a mises en place en s'efforçant de faire des CSS bien propres et adaptées au media handheld ? À quoi sert de continuer à utiliser ce média ? Est-il mort-né ?
(sans se lancer dans le débat "implémentation contre bonne pratique", la question me semble légitime)
Oui, je suis d'accord avec toi Stéphane. Mais je vois le média Handheld comme le média print : il vient nuancer la feuille de style media all, sans tout refaire.
Mouais.
(je suis dubitatif)
Justement, cette question a été posée par mon bon ami Laurent Cottereau lors de la présentation de Dominique.
Déjà, le comportement de Safari sur l'iphone est pas très défini pour l'instant, d'après ce que je compris; une heuristique semble être utilisée pour déterminer si handheld doit être utilisé ou non.
Pour le reste, je serais de l'avis d'Olivier.
En passant, IE/Win gère-t-il bien les media="screen" d'ailleurs ?
A propos de media='handheld', le support est, comme il se doit, assez variable, mais dans l'ensemble plutôt bon... Dans un sondage un peu informel de navigateurs existants, on a pu relever qu'un bon nombre prennent en compte le media 'handheld':
www.w3.org/2005/MWI/BPWG/...
Je vais essayer de mettre en place un ensemble de cas de tests pour avoir des réponses plus formelles (via le groupe de travail sur les suites de tests: www.w3.org/2005/MWI/Tests... et son harnais de test en ligne: www.w3.org/2007/03/mth/ha... mais grosso modo, ça marche plutôt bien.
Concernant l'iPhone, il ne prend pas en compte media='handheld', mais il utilise les CSS Media Queries, si bien qu'en utilisant un lien du type
<link rel='stylesheet' media='handheld, only screen and (max-device-width: 480px)' href='...' />, on peut avoir une feuille de style qui soit lue par les mobiles de manière générale, et l'iPhone de manière particulière. (cf www.lanza.fr/post/Develop... )
(pour info, certains mobiles lisent les feuilles de style 'handheld' *et* les feuilles de style 'screen', ce qui veut dire qu'il faut organiser les feuilles de style de manière intelligente pour obtenir un effet réussi sur un maximum de terminaux, cf www.w3.org/2005/MWI/BPWG/... )
Ca y est, j'ai mis en ligne des cas de tests, cf:
lists.w3.org/Archives/Pub...
Merci Dominique !
I know someone who is still using IE for Macintosh OS 9 http://wiwapia.com/en/Macintosh both of which are ancient