Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Projet Tofino : Mozilla voudrait réinventer l'IU de Firefox
Et planche sur des prototypes de navigateur s'appuyant sur Electron et React

Le , par Stéphane le calme

23PARTAGES

8  0 
Une équipe d’ingénieurs de Mozilla a commencé à travailler sur le projet Tofino sous l’impulsion de Mark Mayo, responsable du développement du navigateur Firefox, qui ambitionne d’apporter de nouveaux « prototypes de navigateur » basés sur des technologies issues du projet Chromium.

« Nous travaillons sur des prototypes de navigateur qui ne ressemblent pratiquement pas au Firefox actuel. Les prémices de ce développement n’auraient pas pu être plus simples : ce que nous attendons d’un navigateur – à la fois sur PC et sur les appareils mobiles – a beaucoup changé depuis Firefox 1.0, et des approches nouvelles n’ont que trop tardé », a-t-il indiqué dans un billet de blog où il décrit le projet.

Dans le cadre du projet Electrolysis (aussi connu sous le nom e10s) Mozilla a préparé Firefox au multiprocessus. La Fondation avait expliqué que « dans les versions actuelles de Firefox sur ordinateur de bureau, le navigateur tout entier fonctionne dans un seul processus du système d'exploitation. En particulier, le JavaScript qui exécute l’interface utilisateur du navigateur (également connu sous le nom "chrome code" fonctionne dans le même processus que le code dans les pages Web (aussi connu comme "contenu" ou "contenu Web" ». Aussi, « les futures versions de Firefox vont exécuter l'interface utilisateur du navigateur dans un processus distinct du contenu web. Dans la première itération de cette architecture, tous les onglets du navigateur vont s’exécuter dans le même processus, et l'interface utilisateur du navigateur quant à lui s’exécutera dans un processus différent. Dans les versions futures, nous nous attendons à avoir plus d'un processus de contenu ».

Les raisons principales de ce projet étaient la performance, la sécurité et la stabilité. Mais, pour Mark Mayo, « ce n’est pas suffisant, surtout lorsque nous avons des idées totalement différentes que nous voulons explorer ». Il s’est intéressé à une exploration de ce à quoi pourrait ressembler l’interface utilisateur et a pensé à la création de ce projet.

L’une des surprises est que Gecko et XUL, les technologies sur lesquelles s’appuie Firefox, ne seront pas utilisées. À la place, Mozilla a opté pour Electron (un framework servant à créer des applications multiplateformes à l'aide de technologies web parmi lesquelles Chromium) et React (un framework JavaScript supervisé par Facebook permettant de construire des interfaces utilisateurs). « Pour une petite équipe commençant un nouveau concept produit, il s’agit là d’un excellent choix - Electron est un merveilleux outil dont nous pouvons nous servir pour le prototypage, mais une simple décision comme choisir le meilleur outil pour accomplir une tâche peut devenir un générateur FUD (Fear, uncertainty and doubt, technique qui consiste à tenter d'influencer autrui en diffusant des informations négatives, souvent vagues et inspirant la peur, pour dénigrer un produit ou un service par exemple) lorsqu’il peut être perçu comme une menace pour le produit existant » a expliqué Mark Mayo.

Pour favoriser la création et l’innovation, il a décidé de laisser une équipe travailler pendant six semaines sur un concept central en étant « coupée » du reste de ses collègues : « l'équipe n’est pas ouverte aux transferts en interne. L’équipe n’a plus accès à ses propres calendriers. Ils ont été désinscrits de toutes leurs listes de diffusion. Ils ne vont se rendre à aucune réunion Mozilla ». L’étape suivante va durer trois mois pendant lesquels ils vont « prouver qu’il y a quelque chose (dans cette exploration de l’interface utilisateur) qui peut devenir un produit ».

Voici quelques croquis du projet :


Source : blog Mark Mayo, blog Philipp Sakl

Voir aussi :

Mozilla prépare Firefox au multiprocessus dans le cadre du projet Electrolysis, les onglets et l'IU vont s'exécuter sur des processus différents

Firefox : des millions d'utilisateurs exposés à une nouvelle classe d'attaques qui exploitent les extensions les plus populaires du navigateur

Les médias US fustigent l'ancien PDG de Mozilla Brendan Eich pour son navigateur antipub et dénoncent son modèle d'affaires « manifestement illégal »

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Uther
Expert éminent sénior https://www.developpez.com
Le 13/04/2016 à 13:36
XUL va être abandonné a moyen terme, oui.
Par contre pour le moment, Gecko est prévu pour rester le moteur de Firefox encore un moment. Mozilla travaille certes sur un moteur alternatif : Servo. Mais ça reste principalement un projet de R&D dont des pièces seront peut-être ajoutées à Gecko.
2  0 
Avatar de Uther
Expert éminent sénior https://www.developpez.com
Le 13/04/2016 à 17:50
Il faut voir qu'il s'agit de produire un prototype, pour tester la viabilité des certains concepts, rien de plus. Il est connu que Gecko est assez complexe a embarquer dans des applications qui ne recourent pas au XUL. Electron semble un choix tout adapté au prototypage rapide.
S'il s'avère que le prototype est concluant, il y aura une vraie implémentation propre basée sur Gecko pour Firefox. Pour un produit aussi critique qu'un navigateur, on ne s'amuse pas a réutiliser directement un prototype.

D'ailleurs ça permettra peut-être d'avoir enfin une interface efficace pour Servo. Le portage devrait être facile vu qu'il implémente le Chromium Embedding Framework.
2  0 
Avatar de Bono_BX
Membre confirmé https://www.developpez.com
Le 13/04/2016 à 12:13
L’une des surprises est que Gecko et XUL, les technologies sur lesquelles s’appuient Firefox, ne seront pas utilisées.
Pourquoi ? Il me semblait que Firefox avait annoncé leur abandon. Je me trompe ?
0  0 
Avatar de TiranusKBX
Expert confirmé https://www.developpez.com
Le 13/04/2016 à 13:13
ces croquis ressemble furieusement à du mélange entre opéra et l'interface de Firefox mobile
0  0 
Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 13/04/2016 à 16:46
Je ne sais pas trop quoi penser des prototypes basés sur Electron... et donc sur Chromium ? Ça serait une décision assez cataclysmique quand on sait tous les efforts investis sur Gecko et Servo. J'espère que tout ça ne va pas être mis à la poubelle.
0  0 
Avatar de LSMetag
Expert confirmé https://www.developpez.com
Le 14/04/2016 à 10:49
Si ça permet de contribuer à l'amélioration du navigateur, aucun problème.

MAIS il ne faut pas que celui-ci perde son identité. Améliorer Geko ou Servo, ok ! Les remplacer par des outils qu'ils n'ont pas conçus eux même, surtout s'ils viennent de Google ou Facebook, je suis totalement défavorable.
0  0 
Avatar de Fagus
Membre actif https://www.developpez.com
Le 20/04/2016 à 17:34
Malgré toute la sympathie que je voue à ce navigateur, il faut se rendre compte qu'il souffre de graves lacunes.

J'ai récemment scripté le navigateur avec FF.au3 et autoit pour une petite application qui chargeait une base et lisait des trucs sur des pages et faire trois clics. Sur une machine puissante, je pouvais ouvrir 50 pages à la fois environ, après quoi firefox finissait par geler ou être très très lent. De plus, son processus unique consommait 100% d'un core sans utiliser les autres à cause de l'architecture.
La mémoire semblait très mal gérée, car elle n'était jamais entièrement libérée après fermeture des pages, et le script devait fermer et relancer firefox après plusieurs cycles de 50 pages, sinon firefox devenait lent, lourd et crashait systématiquement, alors que les ressources système du PC étaient à peine utilisées.

Par ailleurs, à une époque où le web devient infesté d'exploit drive by download, firefox n'est nativement pas sandboxé...
0  0 
Avatar de adrien239
Membre averti https://www.developpez.com
Le 15/04/2016 à 0:22
Firefox, Palemoon, Chrome ou tartempion c'est pas tant le navigateur qui fait sa qualité que les extensions qu'on peut utiliser avec et qui en font sa richesse

Bosser sur le look c'est sympa mais bien moins utile que de bosser sur L'UTILE et faire le plus de choses possibles avec le moins de clics possibles...

Exemple
Enregistrer une image en 1 SEUL clic c'est beaucoup mieux qu'en 3 ou 4 et ainsi de suite pour toutes les autres tâches....
0  1