PWA vs Electron : une plongée en profondeur

Publié: 2020-05-20

Table des matières

Il semble qu'il y ait trop de nouvelles technologies dans le domaine de nos jours pour que nous puissions en suivre l'évolution. Tout récemment, nous assistons à l'émergence d'Electron.js qui est une plate-forme d'alimentation derrière un nombre pas si petit d'applications populaires que nous utilisons tous les jours, et puis il y a aussi Progressive Web App qui est censée être une nouvelle façon pour sites Web pour offrir des expériences client de premier ordre et attrayantes sans sacrifier les performances en cours de route.

Pour mieux vous aider à garder une trace de toutes ces nouvelles technologies, aujourd'hui dans l'article de SimiCart, nous comparerons les deux, Electron et PWA, de la manière la plus complète.

Qu'est-ce que la PWA ?

PWA semble être très en vogue ces jours-ci, car il s'agit d'une technologie soutenue par Google eux-mêmes et qui attire toute l'attention des grands noms tels que Microsoft avec leur plan ambitieux de rendre le Microsoft Store rempli de PWA. La raison pour laquelle il est si populaire est que PWA lui-même est la meilleure chose à venir du Web depuis des années - son bilan parle de lui-même.

Pour faire simple, les Progressive Web Apps sont des sites Web qui ressemblent à une application. La technologie est un mélange des meilleures fonctionnalités du Web et des applications natives, ce qui signifie que les utilisateurs qui utilisent PWA peuvent bénéficier de toutes les fonctionnalités auparavant exclusives aux applications natives telles que les notifications push, la géolocalisation, etc.

PWA Twitter
Twitter dans Microsoft Store est un PWA

Qu'est-ce que l'électron ?

Comparé à PWA, Electron est similaire à bien des égards car il utilise également les technologies du Web, c'est-à-dire HTML, CSS, JavaScript, pour relever au mieux le défi multiplateforme. Cependant, contrairement à PWA, les applications alimentées par Electron peuvent être transformées en applications de bureau entièrement fonctionnelles, grâce à l'utilisation d' API natives et du moteur de rendu de Chromium . En fait, il est si fonctionnel qu'il est souvent impossible de le distinguer des applications de bureau natives, et vous auriez pu en rencontrer une sans savoir qu'elle est basée sur Electron. Par exemple, certaines de vos applications essentielles sont probablement basées sur Electron, notamment Skype, Slack, Discord. et Visual Studio Code.

Électron de discorde

Electron ne sonne-t-il pas simplement mieux?

Eh bien, quand vous le dites de cette façon… c'est en quelque sorte le cas; mais non, c'est plus nuancé que ça. Il y a une raison pour laquelle nous assistons à un récent ralentissement du nombre d'applications basées sur Electron, c'est parce qu'Electron montre son âge, en particulier à une époque où les utilisateurs sont désormais plus exigeants que jamais pour l'expérience omnicanal offerte par PWA. .

Lorsque nous avons demandé des contributions à des développeurs expérimentés d'Electron et de PWA, nous avons remarqué les modèles suivants :

  • Disponibilité : étant donné que les applications basées sur Electron sont à peu près une version hybride des applications de bureau et ne peuvent pas du tout être installées sur des appareils mobiles, PWA a l'avantage d'être disponible sur presque tous les appareils dotés d'un navigateur compatible PWA.
  • Performance : Une application basée sur Electron, lorsqu'elle est bien faite, devrait se sentir aussi rapide et légère qu'une application texte, mais ce n'est pas la meilleure performance que vous puissiez obtenir. L'un des avantages connus de PWA est que vous pouvez obtenir de meilleures performances (par rapport à Electron) lors du premier chargement, et un temps de chargement quasi instantané lors de chargements ultérieurs, car tout est mis en cache à la volée, et une grande partie de la surcharge JavaScript peut à la place être déplacée sur le travailleurs des services qui fait partie intégrante de PWA.
  • Mise à jour : Comme nous le savons tous, la mise à jour (et le déploiement en général) est un problème majeur pour les applications natives de toutes sortes, et Electron ne fait pas exception. Cela peut être évité en optant pour l'approche PWA avec laquelle l'ensemble du processus de mise à jour peut se produire côté serveur, soulageant ainsi vos clients du processus d'installation des mises à jour.
  • Taille : Electron, bien qu'il pèse moins que l'application de bureau typique, est toujours considérablement plus lourd que PWA. Il est difficile de trouver une application Electron qui pèse moins de 50 Mo, alors que la plupart des PWA pèsent moins d'un mégaoctet.
  • Sécurité : PWA est tout simplement meilleur en matière de sécurité car il repose entièrement sur des connexions sécurisées (HTTPS) maintenues par le navigateur, tandis qu'Electron, étant une application Web enveloppée dans un conteneur d'application natif, doit tout faire manuellement par lui-même.

Pourquoi PWA devient de plus en plus populaire

Voici la vérité, Electron est une technologie obsolète. Bien qu'il soit actuellement utilisé par un grand nombre d'applications de bureau, beaucoup d'entre elles prévoient déjà de convertir leurs applications de bureau existantes basées sur Electron en PWA. Oui, vous pouvez convertir une application basée sur Electron en PWA, bien que le processus ne soit pas aussi fluide que le processus de conversion de PWA en Electron, mais c'est possible.

Electron sans tous ses défauts

Les applications Web progressives peuvent être considérées comme une technologie meilleure et potentiellement plus évolutive, car elles résolvent les problèmes fondamentaux d'Electron - compatibilité et facilité de distribution - tout en restant fonctionnelles et attrayantes pour l'expérience utilisateur. Cela est dû au fait que les navigateurs deviennent aujourd'hui leur propre système d'exploitation universel avec toutes les fonctionnalités que vous pourriez demander, et comme effet secondaire de cela, les technologies qui s'appuient et s'exécutent sur le Web telles que PWA ne font que s'améliorer avec le temps. .

 Voir plus : 
Desktop PWA - L'avenir de la livraison de logiciels
PWA pour Magento 2

Omnicanal

En ce qui concerne l'expérience omnicanale, PWA excelle de toutes les manières imaginables, car elle est spécialement conçue pour l'expérience multi-appareils réactive. Selon le type d'entreprise impliquée, PWA peut être la référence pour les entreprises qui souhaitent que l'expérience utilisateur soit la même sur tous les appareils, tandis qu'avec Electron JS, vous devrez développer différentes bases de code pour différentes plates-formes, augmentant ainsi le coût de développement.

Quand choisir Electron

Tout en ayant ses avantages, PWA ne peut pas être une solution globale pour tous les modèles commerciaux, et c'est là qu'Electron trouve sa niche. Les applications basées sur Electron ne sont généralement pas soumises à la contrainte de navigateur habituelle et sont libres de se développer sur la base de la fonctionnalité Node.js, avec laquelle Electron peut avoir accès à toutes les API natives du système d'exploitation. Cela signifie que les applications basées sur Electron s'exécutent en mode utilisateur tout le temps, garantissant ainsi un environnement d'exploitation sûr et stable pour l'utilisateur.

En règle générale au sein de la communauté Electron, ce n'est jamais une bonne idée d'utiliser Electron pour ce qui peut être juste un site Web . Donc, si vous pensez que votre application appartient à la petite minorité de cas où vous avez besoin de la liberté et des fonctionnalités supplémentaires des applications natives, optez pour Electron ; mais dans tous les autres cas, une PWA est plus que suffisante.

Envelopper les mots

Le Web avec ses technologies rattrape rapidement son retard et, combiné au mouvement des grandes marques pour faire avancer les adoptions de PWA, il ne devrait pas vous surprendre de voir plus de PWA à l'avenir. Cependant, cela ne veut pas dire non plus qu'Electron est sur son lit de mort, car la technologie est encore assez fonctionnelle et devrait être là pendant un bon moment ; mais si vous faites partie de ceux qui envisagent entre les deux, PWA est un choix évident car la technologie est encore relativement récente et son support devrait monter en flèche dans un proche avenir.


Lire la suite:
PWA vs Flutter : une comparaison détaillée

Tout ce que vous devez savoir sur les Progressive Web Apps

Applications Web progressives : 12 exemples de vraies marques pour votre inspiration

Magento PWA Studio : une comparaison détaillée avec Vue Storefront