Ouvrir le menu principal

MacGeneration

Recherche

Les performances, bonne résolution pour Atom en 2018

Nicolas Furno

lundi 15 janvier 2018 à 21:47 • 17

Logiciels

Electron est un framework qui permet de créer des apps multiplateformes à partir de technologies du web. Il a gagné en popularité ces dernières années et de nombreuses apps de premier plan l’utilisent, dont la célèbre messagerie instantanée Slack. Mais s’il est connu, ce n’est pas toujours pour de bonnes raisons : il est en effet souvent critiqué pour ses performances en deçà des apps natives ou encore sa gourmandise. À tel point que certains comparent désormais Electron à Flash… on a vu plus valorisant.

Face à ces critiques, certains reviennent au développement natif, mais d’autres espèrent améliorer les performances pour effacer la différence avec les apps natives. C’est le cas d’Atom, l’éditeur de code de GitHub qui a été le premier à utiliser Electron (le framework a, en fait, été créé pour ce logiciel). Dans un article publié sur le blog du projet il y a quelques jours, ses concepteurs ont indiqué que la performance était l’objectif principal pour 2018.

La dernière version d’Atom. Cliquer pour agrandir
La dernière version d’Atom. Cliquer pour agrandir

Plusieurs projets avaient déjà été menés en ce sens en 2017. En juin dernier par exemple, Atom avait amélioré ses performances lors de l’ouverture de gros fichiers en utilisant du code natif pour cette partie précise du logiciel. Des travaux ont aussi été menés sur d’autres fronts, notamment le temps d’attente à l’ouverture de l’app, mais ses concepteurs ont reconnu que la vitesse n’était pas la priorité auparavant.

Atom a été conçu avant tout comme un éditeur de code facile à modifier. On peut tout changer, de l’interface aux fonctions de base, et c’est indéniablement une raison importante de son succès. En contrepartie, cette souplesse a aussi contraint les développeurs à faire quelque choix qui ont eu un gros impact sur les performances. À titre d’exemple, à chaque fois que l’utilisateur tapait sur une touche du clavier, le logiciel devait faire des calculs importants, ce qui ajoutait une latence importante. Plusieurs mesures seront mis en place en 2018 pour simplifier cette partie et réduire la latence.

D’autres domaines sont encore évoqués dans l’article. Le temps au démarrage a déjà progressé l’an dernier, mais de plus gros progrès sont à attendre dans les mois qui viennent. En particulier, le logiciel ne chargera plus tous les modules dès le départ, il commencera par afficher une interface fonctionnelle, puis les chargera à l’arrière-plan.

Sorti courant 2017, Atom 1.17 avait amélioré le temps nécessaire au démarrage de l’éditeur de code. Cliquer pour agrandir
Sorti courant 2017, Atom 1.17 avait amélioré le temps nécessaire au démarrage de l’éditeur de code. Cliquer pour agrandir

L’ouverture de gros fichiers devrait aussi être plus rapide, et leur gestion ensuite poser moins de problèmes de performances. Pour cela, les créateurs d’Atom vont suivre la même stratégie, remplacer des composants sensibles aux performances par des modules développés avec du code natif à la place du JavaScript. Du C++ ou du Rust, le langage de Mozilla, pourrait être utilisé en fonction des besoins. Parmi les briques qui seront écrites en Rust, l’une d’entre elles servira à réduire la consommation de RAM du logiciel, l’un des points noirs des apps Electron.

Un logiciel aussi important qu’un éditeur de code peut-il être à la hauteur d’une app native quand il est développé avec Electron ? Peut-être pas, mais le cas d’Atom prouve qu’il y a matière à optimiser le code pour améliorer les performances et celui de Visual Studio Code, autre éditeur de code basé sur Electron, montre que l'on peut avoir de bien meilleures performances. Reste à savoir si les gains promis seront bien au rendez-vous, réponse dans les prochains mois.

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

Pour le producteur de La Maison, « Apple est la pire boîte marketing de l’univers »

00:08

• 32


Upscaling vidéo et restauration photo plus rapides sur Mac/PC : VideoProc AI mis à jour est à - 62 % 📍

25/04/2025 à 17:44

• 0


Derniers jours Apple week à la Fnac : -10 % sur des MacBook Pro, iPhone 15 Pro à 16 Pro Max et iPad Pro M4

25/04/2025 à 16:00

• 7


dav1d, le décodeur AV1 le plus optimisé qu'Apple refuse d'utiliser

25/04/2025 à 14:00

• 5


Microsoft a conçu une publicité par IA et personne n’a rien vu

25/04/2025 à 13:45

• 26


Razer lance sa première souris ergonomique verticale face à Logitech

25/04/2025 à 12:15

• 9


Yahoo! veut acheter Chrome

25/04/2025 à 10:45

• 34


Slate veut repartir de zéro avec un pick-up électrique compact et épuré pour moins de 20 000 $

25/04/2025 à 10:00

• 103


iPadOS 19 verrait apparaître une barre de menus sur iPad

25/04/2025 à 09:24

• 47


Huit ans après DeX, Apple s’ouvrirait peu à peu à un bureau sur écran externe pour iOS 19

25/04/2025 à 09:23

• 50


John Giannandrea aurait aussi perdu l'équipe en charge de la robotique chez Apple

25/04/2025 à 07:39

• 11


Les procès antitrust contre les GAFAM se poursuivent aux USA, malgré les changements de présidence

24/04/2025 à 21:30

• 28


Prise en main de Supercharge, l’app à tout faire qui rend bien des services sur le Mac

24/04/2025 à 20:30

• 17


TSMC annonce la gravure en 1.4 nm, quand la Russie espère atteindre les 28 nm en 2030

24/04/2025 à 20:20

• 55


Données personnelles : comment Incogni supprime ce que les autres ne peuvent pas 📍

24/04/2025 à 18:17

• 0


Amazon va fêter ses 25 ans en France avec une semaine de promos du 30 avril au 6 mai

24/04/2025 à 17:30

• 18