Ouvrir le menu principal

MacGeneration

Recherche

Xray, un nouvel éditeur de texte ultra-performant basé sur Electron

Nicolas Furno

mardi 06 mars 2018 à 14:00 • 23

Logiciels

Les apps qui reposent sur Electron sont devenues très populaires en quelques années, parce qu’elles permettent de développer assez simplement des apps qui fonctionneront sur macOS, Windows et Linux. Ce framework repose sur des technologies du web pour concevoir interfaces et fonctions : HTML, CSS et surtout JavaScript. Cela réduit la difficulté par rapport aux langages de développement utilisés traditionnellement par les logiciels pour ordinateurs, et cela permet aux développeurs web, nettement plus nombreux, de créer des apps.

Tout ceci est bien beau sur le papier, mais les apps développées grâce à Electron sont aussi plus lourdes que les apps natives, et souvent plus lentes. Ce problème de performance est tel que certains comparent Electron à Flash et que de plus en plus d’utilisateurs refusent systématiquement toutes les apps qui reposent sur Electron (lire aussi : Voici pourquoi certains développeurs utilisent toujours Vim). Pour contrer le phénomène, les développeurs d’Atom, l’éditeur de code développé par GitHub et pour qui le framework a été créé, essaient d’améliorer les performances, notamment en utilisant du code natif pour certaines fonctions.

Mais GitHub expérimente aussi autour d’une idée plus radicale avec Xray, un nouvel éditeur de texte dont le développement vient juste de commencer. Son principal objectif est d’être extrêmement performant, au niveau des meilleures applications de la catégorie, tout en étant multiplateforme. L’idée est toujours d’utiliser Electron, mais uniquement pour l’interface, tout le reste de l’app sera développé en Rust, un langage de bas niveau créé par Mozilla et qui vise à remplacer C ou C++.

L’architecture prévue pour Xray.

Rust a été développé pour Firefox, il est pensé pour être extrêmement optimisé et très rapide, notamment en fonctionnant massivement en parallèle. C’était précisément l’un des points faibles du JavaScript utilisé jusque-là exclusivement pour les apps Electron comme Atom, ce langage de haut niveau ne pouvait pas facilement travailler en parallèle et obtenir de meilleures performances est très difficile.

Si la performance est une priorité, pourquoi ne pas abandonner totalement Electron ? Les créateurs de Xray défendent leur choix en indiquant que cela restait la meilleure option pour créer des interfaces compatibles avec toutes les plateformes et faciles à modifier. C’est en effet l’un des points forts des logiciels développés sur cette base, ils peuvent facilement être remodelés avec des thèmes qui peuvent changer toute l’interface en quelques lignes de CSS. C’est donc un point qu’ils voulaient maintenir, mais tout le reste de l’architecture sera différente.

Est-ce que Xray sera finalement aussi rapide que souhaité aujourd'hui ? Ses concepteurs visent des performances dignes des meilleures apps natives, comme par exemple l’ouverture d’une fenêtre en 150 ms seulement, mais le curseur doit bouger en moins de 8 ms. Ces valeurs médianes font qu’une interface semble parfaitement fluide et elles seront visées tout au long du développement. D’autres objectifs ont été ou seront fixés, notamment la quantité de RAM consommée qui devra rester minime ; c’est en effet souvent un autre problème avec Electron.

Les créateurs de Xray ont réfléchi systématiquement avec les performances en tête, ce qui implique des choix importants à tous les niveaux, de la manière d’enregistrer et d’afficher le texte aux traitements qui seront faits en parallèle pour ne jamais bloquer l’interface. Ce sont autant de points qui compliquent le développement par rapport à une « simple » app Electron, mais qui devraient offrir de bien meilleures performances à l’arrivée.

Du moins, en théorie, puisque Xray n’est même pas encore un prototype fonctionnel à ce stade. GitHub a prévu d’allouer 12 semaines de développement au projet et on en est à la deuxième, à un stade où l’on ne s’occupe encore que des bases. Le développement est entièrement open-source et peut-être suivi sur GitHub également. Vous pouvez y participer, simplement en spectateur ou en contributeur, si vous avez les compétences nécessaires.

Si tout va bien, on devrait avoir un concept plus ou moins fonctionnel dans quelques mois. À partir de là, GitHub pourrait choisir de passer à la vitesse supérieure en matière de développement. Et pourquoi pas, si tout va vraiment bien, faire de Xray le successeur d’Atom à l’avenir. Mais on en est encore loin et l’idée de base doit encore prouver son intérêt à l’usage.

Image de couverture : photo sergiok (CC BY-NC 2.0) et le logo d’Electron

Rejoignez le Club iGen

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

Rejoignez la plus grande communauté Apple francophone !

S'abonner

Refurb Apple : les premiers MacBook Air M4 sont arrivés en France

17:40

• 1


macOS 26 : des réglages dans Mail pour marquer les messages comme lu

17:01

• 3


Synology étend sa gamme 2025 avec le DS725+ : deux baies, SSD NVMe et limité sur les disques durs

16:30

• 2


Big Man : un nouveau court métrage filmé à l’iPhone 16 Pro avec le rappeur Stormzy

16:12

• 0


Apple envisage d’utiliser l’IA pour accélérer le développement de ses puces

15:44

• 11


B&You Pure fibre : les frais de mise en service temporairement offerts sur cette offre star

13:01

• 48


iPadOS 26 : Craig Federighi détaille le raisonnement derrière le nouveau multitâche

12:37

• 56


Pour John Gruber, Apple s’est dévalorisée en boycottant son émission après ses critiques sur Siri

10:14

• 39


Obtenez les meilleures applications Microsoft Office conçues spécialement pour Mac à petit prix 📍

09:30

• 0


MacBook Air M4 : la chute des prix se poursuit encore sur ce nouvel incontournable 🆕

07:00

• 111


Nintendo n’hésite pas à briquer toute Switch 2 utilisée avec une cartouche modifiée

06:29

• 78


iPhone pliable : la production commencerait d’ici la fin de l’année, pour une sortie en 2026

06:29

• 55


Donald Trump affirme qu’Apple va acheter un nombre conséquent de Trump Card

18/06/2025 à 21:15

• 43


LG commercialise son téléviseur transparent à 49 999 €

18/06/2025 à 20:15

• 25


Kernel Panic : on discute avec Jean-Baptiste Kempf, créateur de VLC

18/06/2025 à 19:00

• 20


YouTube a trouvé un nouveau moyen d’embêter les utilisateurs de bloqueurs de pubs

18/06/2025 à 14:58

• 77