Page d'accueil » comment » Que sont les applications Electron et pourquoi sont-elles devenues si courantes?

    Que sont les applications Electron et pourquoi sont-elles devenues si courantes?

    Avez-vous remarqué que beaucoup de nouvelles applications de bureau ressemblent beaucoup à des sites Web? Ce n'est pas ton imagination.

    De Trello à Slack, de WordPress.com à Github, il est de plus en plus courant que les applications dites de bureau combinent un site Web avec quelques fonctionnalités natives telles que les notifications, l'accès au système de fichiers et les menus. La technologie la plus courante permettant de le faire s'appelle Electron. Elle est utilisée par quelques applications que vous ne pouvez même pas suspecter, telles que l'application de discussion Discord et le code Microsoft Visual Studio..

    Grâce à Electron, les développeurs peuvent facilement lancer une application simultanément sur Windows, MacOS et Linux, mais il existe des inconvénients pour les utilisateurs. Les applications électroniques sont énormes, d'une part. Slack, une application de discussion en ligne, occupe 237 Mo d'espace disque sur mon Mac et la consommation de mémoire n'est pas faible non plus. Qu'est-ce qui prend toutes ces ressources? Et pourquoi les développeurs utilisent-ils quelque chose d'aussi inefficace??

    Les applications Electron sont assez faciles à créer

    Les applications de bureau sont difficiles à créer, surtout si vous voulez qu’elles soient multi-plateformes. L'accès au système de fichiers fonctionne différemment dans Windows par rapport à Linux, par exemple, et les notifications fonctionnent différemment sous macOS que sous Windows. Cela signifie que toute personne souhaitant écrire une application pour les trois systèmes d'exploitation (ou même deux d'entre eux) doit réécrire une grande partie de leur code lors du transfert de l'un à l'autre..

    Electron "résout" cela en offrant une plate-forme unique qui fonctionne sur les trois principaux systèmes d'exploitation de bureau. Cela signifie que les développeurs peuvent écrire le code pour des choses telles que les notifications une fois et s’attendre à ce qu’il fonctionne de manière native sur chaque système d’exploitation. Encore mieux pour les développeurs: tout peut être construit en utilisant les technologies Javascript, HTML et CSS que tous ceux qui codent pour le Web connaissent bien.

    Les applications Electron contiennent presque tout le chrome

    Comment est-ce possible? En partie parce que chaque application Electron comprend un navigateur Web complet: Chromium, la version open source de Google Chrome. Ceci est fourni avec les instructions spécifiques à la plate-forme afin de garantir que tout se comporte exactement comme les développeurs l’attendent sur tous les systèmes. C’est pourquoi la version de bureau de Slack occupe plus de 200 Mo d’espace disque dur: la majeure partie de Chrome est intégrée à cet emplacement..

    Chaque application Electron que vous exécutez est plus ou moins une instance complète de Chrome. Comme l'a souligné le blogueur Joseph Gentle, ce n'est pas l'idéal:

    Vous pouvez considérer Slack comme un petit programme javascript s'exécutant dans une autre machine virtuelle du système d'exploitation (chrome), que vous devez exécuter pour pouvoir dialoguer sur IRC. Même si vous avez le vrai chrome ouvert, chaque application électronique exécute sa propre copie supplémentaire de l'ensemble de la machine virtuelle..

    Alors oui, il y a des inconvénients pour les utilisateurs. Tout d’abord, chaque application Electron que vous téléchargez regroupe la majeure partie de Chromium, et chaque application que vous exécutez exécute une bonne partie de ce code. Il n'y a pas de partage de ressources ici, comme c'est le cas avec les applications natives, ce qui signifie que les applications Electron occuperont plus d'espace disque et de mémoire qu'une application développée spécialement pour votre plate-forme. Si les performances vous intéressent vraiment, évitez les applications Electron..

    Attendez, l'électron est-il bon ou mauvais??

    À ce stade, les ordinateurs sont si puissants que la plupart des utilisateurs ne remarqueront même jamais à quel point les applications Electron sont inefficaces. En fait, la grande majorité n’a jamais entendu parler d’Electron. La plupart de mes collègues ne l'avaient pas fait et tous utilisaient Slack tous les jours. Beaucoup étaient enthousiastes à l'idée de voir sortir une version de bureau de Trello et n'avaient encore aucune idée qu'il s'agisse d'une application Electron..

    Et ces applications s'intègrent vraiment mieux avec votre système d'exploitation que les sites Web. Ils vivent dans leur propre fenêtre. Ils offrent d'excellents raccourcis clavier, notifications natives et autres choses que vous ne pouvez pas faire de la même manière avec juste un navigateur.

    Et il est fort à parier que des applications telles que Slack, Trello et WordPress.com ne se donneraient pas la peine d’offrir une version de bureau si Electron n’existait pas, se concentrant plutôt sur les versions pour mobile et pour navigateur. La question n'est donc pas de savoir si Electron est mauvais; c'est si les applications Electron valent mieux que rien. Je suis prêt à dire oui, mais des personnes raisonnables peuvent être en désaccord. (Et hé, pour ces personnes, il y a toujours la version web.)