VT2017 Electron

=ELECTRON=

Résumé
ELECTRON est une librairie permettant de développer des applications de bureau multiplateforme. C’est une librairie open-source aussi bien utilisée par des particuliers que des professionnels (Slack, Discord…). Il existe beaucoup de framework permettant de développer ce genre d’application. Cependant, ELECTRON se démarque de ses concurrents grâce aux langages de programmation qu’il utilise (javaScript,html,css) et la structure particulière de ses applications(Multi-processus). La technologie ELECTRON possède beaucoup d’atouts comme un module autoUpdater et une forte activité sur le dépôt Git, néanmoins sa consommation de processus et de mémoire vive peut parfois être un problème.

Multi-processus, Multiplateforme, Node.js, javascript, html, css, Chromium, open-source, NW.js, Atom, Squirrel

Abstract
ELECTRON is a framework which allow multiplatform desktop app development. This open-source library is used by particular but also by professional (Slack, Discord…). However, there are a lot of library for develop this kind of application but ELECTRON stands out from the others thanks to his programming language(javascript, html, css) and his app structure(multi-process). This technology gets a lot of advantages like an autoUpdater module and a high activity on the GIT repository nonetheless his RAM and process consumption can be sometimes an issue.

Multi-process, Multiplateform, Node.js, javascript, html, css, Chromium, open-source, NW.js, Atom, Squirrel

Introduction et besoin
Le développement multiplateforme est de nos jours un point très un important dans le marché du logiciel. En effet, il existe toutes sortes de plateforme comme Linux, Android, Windows, IOS qui possède leurs propres caractéristiques et leur propre langage natif. Ainsi, pour réaliser une application dite multiplateforme, il faut réaliser autant de version de codes différents que de plateforme. Le problème de ce genre de programmation est qu’elle est très coûteuse en temps et en argent. C’est pourquoi, généralement l’entreprise se contente de réaliser l’application seulement pour une ou deux plateformes, ce qui pénalise certains utilisateurs et fait perdre de nouveaux clients à l’entreprise.

C’est de ce besoin que sont nées les librairies de développement d’applications multiplateforme. Le principe de ces logiciels est de générer une application pour tous types de plateforme et ceux à partir d’un seul code. Il existe des dizaines de logiciels de ce type, certains permettent de générer les applications à partir de n’importe quel langage de programmation, d’autres utilisent des langages qui leur sont propres. De plus ces logiciels peuvent être payants ou open-source et plus ou moins performants.

Depuis quelques années une librairie souvent citée dans le développement d’applications bureautiques multiplateforme est ELECTRON. Cependant quels sont les avantages et inconvénients de cette librairie et comment fonctionne-t-elle ? Dans un premier temps nous pencherons sur l’origine ce projet et comment la librairie fonctionne-t-elle. Ensuite, nous aborderons les inconvénients et avantages de celle-ci en la comparant à un autre produit du marché.

Petit historique
ELECTRON était à l’origine un Framework développer par l’équipe GitHub pour passer l’éditeur de texte ATOM en multiplateforme. En 2014 le code est devenu open-source et c’est en 2016 que les premières applications ELECTRON deviennent disponible sur les stores IOS et Windows. La librairie étant open source, elle est utilisable aussi bien par des particuliers que des professionnels et évolue au grès des contributions apportées par l’équipe GitHub, les développeurs indépendants ou les entreprises. Ainsi parmi les applications basées sur ELECTRON il est possible de retrouver : Slack, Discord, GitKraken, Visual Studio code…