Electron
Développé par GitHub, Electron est un framework permettant de développer des applications multiplateformes desktop avec des technologies web (JavaScript, HTML et CSS). L'infrastructure (backend) est codée en node.js, et l'interface (frontend) est bâtie sur la base des outils Chromium. Electron a notamment permis de développer les éditeurs de texte libres Atom de GitHub et Visual Studio Code de Microsoft.
Les applications desktop Electron peuvent lire et écrire des données dans le système de fichiers de l'ordinateur. Il existe de nombreuses applications desktop populaires construites avec Electron sur le marché, par exemple Skype pour Linux. L'avantage de cette solution est qu'il n'est pas nécessaire qu'un développeur Web JavaScript apprenne une nouvelle technologie ou un nouveau langage pour créer une application desktop. L'application Electron réutilise généralement la logique métier, la conception et la structure générale d'une application Web.
React
React est une bibliothèque JavaScript libre développée par Facebook. React a été conçu comme étant une bibliothèque et non un framework MVC, comme peuvent l'être ses concurrents. React est une bibliothèque qui ne gère que l'interface de l'application, considéré comme la vue dans le modèle MVC. Elle peut ainsi être utilisée avec une autre bibliothèque ou un framework MVC comme AngularJS. La bibliothèque se démarque de ses concurrents par sa flexibilité et ses performances, en travaillant avec un DOM virtuel et en ne mettant à jour le rendu dans le navigateur qu'en cas de nécessité.
React encourage donc la création de composants réutilisables, avec en entrée des données, pouvant changer au cours du temps. Par ailleurs, React n'utilise pas de système de templates et ne fonctionne qu'avec du JavaScript, permettant une encapsulation complète du composant au sein d'une unique classe.
Le but principal de cette bibliothèque est de faciliter la création d'applications web monopages, via la création de composants dépendant d'un état et générant une page (ou portion) HTML à chaque changement d'état.
Facebook recommande d’utiliser JSX, une extension syntaxique de JavaScript, avec React afin de décrire à quoi devrait ressembler l’interface utilisateur (UI). Bien entendu, React ne vous oblige pas à utiliser JSX, mais la plupart des gens y trouvent une aide visuelle quand ils manipulent l’interface utilisateur dans le code JavaScript. Cela permet aussi à React de produire des messages d’erreurs et d’avertissements plus utiles.
Étant donné qu’il est créé et maintenu par Facebook, il fournit un poids énorme sur la balance lors du choix pour un projet. Cela donne de React un sentiment de stabilité qui fait défaut à de nombreux nouveaux frameworks.
Angular
Angular est l'un des frameworks JavaScript les plus puissants, efficaces et open source. Angular utilise TypeScript, qui est un sur-ensemble de JavaScript qui peut être compilé en Vanilla JS. Google, qui est en est à l’origine, exploite ce framework qui est implémenté pour être utilisé pour développer une application web monopage (en anglais single-page application ou SPA). Étant donné que Angular est géré par Google, les utilisateurs peuvent être sûrs qu'il sera disponible et utilisé pendant longtemps.
Angular est donc un framework JavaScript qui étend le HTML pour le rendre dynamique, et permet de développer ses propres balises et attributs HTML. C’est un framework qui se veut extensible et qui pousse vers un développement structuré, en couches, le but n’étant pas d’ajouter de simples animations au DOM, mais bien d’apporter un aspect applicatif au front-office.
Il étend le code HTML dans l'application et interprète les attributs pour effectuer la liaison de données. Le projet Angular est construit sur des années d'expérience, d'Angular à Angular 2 et bien au-delà. Angular 2 regorge de fonctionnalités utiles telles que l'injection de dépendances, les templates, les formulaires, etc.
Meteor
Meteor est un framework full-stack, qui permet aux développeurs d'apprendre un outil et de l'utiliser pour presque tout dans leur application. Meteor se présente comme « le moyen le plus rapide de créer des applications JavaScript », une « plateforme open source pour le Web, les mobiles et les ordinateurs de bureau ». Meteor est donc un candidat intéressant pour les projets full-stack. Ce framework multiplateforme écrit en Node.js peut être utilisé pour créer des applications Web, mobiles et desktop.
Ce framework est utilisé dans des domaines tels que le développement back-end, la gestion de bases de données, la logique métier et le rendu du front-end. Il peut être utilisé avec Cordova ou d'autres outils similaires pour produire des applications. Il dispose de modules front-end et back-end, d’outils de build et de packages Node.js.
NW.Js
NW.js, anciennement connu sous le nom de node-WebKit, a été construit au centre de technologie Open Source d'Intel en combinant le framework Node.js avec un moteur Chromium (anciennement Webkit). Node.js est un environnement d'exécution JavaScript côté serveur, qui fonctionne sur plusieurs plateformes et est un outil open source pour le développeur.
Il s’agit donc d’un framework qui permet de développer des applications multiplateformes (Windows, MacOS et Linux) avec des technologies Web (JavaScript, HTML/CSS). Grâce à la combinaison Node.js et Chromium, vous pouvez créer une application qui non seulement charge un site Web local dans une fenêtre d'application, mais se connecte également au système d'exploitation via l'API JavaScript. Le framework est capable de piloter des E / S asynchrones avec son architecture événementielle. Il fonctionne dans l'environnement JavaScript Runtime et montre donc des propriétés similaires de JAVA comme le threading, les packages, la formation de boucles.
NW.js vous donne la liberté de choisir les frameworks et les bibliothèques que vous souhaitez utiliser sur un projet. Il permet d'appeler des modules Node.js directement à partir du DOM, prend en charge toutes les fonctionnalités du navigateur, fournit une protection source JavaScript et est disponible sur Linux, Mac OS et Windows.
Ember.Js
Ember.js est arrivé sur le marché des logiciels en 2015, et depuis lors, il a gagné en popularité avec son large domaine d'application. Ember.js se concentre sur l'accomplissement des tâches et leur réalisation rapide. Les fonctionnalités d'Ember.js prennent en charge la liaison de données bidirectionnelle et, par conséquent, établissent une plateforme fiable pour gérer les interfaces utilisateur complexes. Des sites Web populaires comme LinkedIn, Netflix, Nordstrom et bien d'autres utilisent la plateforme Ember.JS. L'inspecteur Ember permet une inspection facile des objets Ember dans les outils de développement de votre navigateur. Cela peut être utilisé à la fois lors du développement et du débogage de problèmes.
Les meilleures pratiques avisées rendent Ember relativement facile à utiliser, tant que vous êtes prêt à suivre la structure d'Ember. Cela facilite le démarrage des projets. Il fournit également plusieurs outils externes pour aider les développeurs. Le package d'outils de ligne de commande « ember-CLI » propose des outils utiles à ajouter à la boîte à outils du développeur d'une application Ember. C'est un excellent outil pour mettre rapidement votre application en production et pour traiter les problèmes et les problèmes de dépannage.
Proton Native
Proton Native a été mis à disposition sur GitHub au début de 2018. Ce qui en fait l'un des frameworks JavaScript les plus intéressants pour les applications desktop, c'est qu'il vous permet de gérer l'état et de créer des interfaces utilisateur de manière transparente tout en le faisant sur plusieurs plateformes. Il fonctionne assez différemment d'Electron, qui exécute un navigateur Chromium complet pour gérer une petite interface graphique. Proton Native, en revanche, utilise des outils natifs, prend moins d'espace et nécessite moins de ressources.
Vue.Js
Vue.js a été développé en 2016, ce framework JavaScript a déjà fait son chemin sur le marché et a fait ses preuves en proposant diverses fonctionnalités. Vue a une taille de fichier incroyablement petite, ce qui facilite son inclusion dans les projets sans créer de ralentissement. Son mode d'intégration double est l'une des fonctionnalités les plus attrayantes pour la création de SPA haut de gamme ou d'application à page unique.
Vue peut être intéressant pour le développement multiplateforme. Vue a une courbe d'apprentissage relativement plus facile que certains des plus grands frameworks et une documentation fournie pour aider les personnes qui débutent avec les frameworks JS mais aussi les professionnels. C’est l’un des frameworks recommandés pour les personnes débutants avec des frameworks JavaScript ou qui ont besoin de quelque chose de léger pour un projet.
Mithril
Mithril.js est un framework JavaScript moderne qui permet notamment de concevoir des applications monopages. Il est petit (moins de 8 Ko pour son archive gzip), rapide et fournit des utilitaires XHR et de routage prêts à l’emploi. Il bénéficie, en outre, du soutien d’une communauté active qui contribue depuis quelques années déjà à son évolution.
Mithril offre des possibilités similaires à Angular.js tout en étant beaucoup plus simple à manipuler. Il utilise aussi une représentation interne du DOM (ou Virtual DOM) et se sert de JavaScript comme d’un mécanisme de contrôle de flux dans les vues comme React.js. Ce framework a l’avantage d’être plus léger que React ou Angular et évite d’avoir recours à des bibliothèques tierces telles que jQuery.
Mithril pourrait être considéré comme la solution idéale pour créer des widgets JavaScript intégrés et des interfaces utilisateur ayant des exigences de performances élevées. Il permet aussi d’améliorer les performances des applications conçues pour la communication interactive en temps réel entre différents interlocuteurs. De plus, ce framework de développement est supporté par un très grand nombre de navigateurs (incluant Internet Explorer 9) et par toutes leurs versions mobiles.
Mithril est utilisé par de nombreuses sociétés reconnues (Vimeo, Nike ou encore Fitbit) et alimente également de grandes plateformes open source comme Lichess ou Flarum. Ce framework a même déjà permis de concevoir l’application de jeu Guild Wars 2. Son approche pragmatique de la création d’applications le destinerait aux développeurs qui privilégient la cohérence et la facilité d’intégration.
Polymer
Polymer est un framework open source, plus léger, soutenu par Google, avec un accent particulier sur la conformité aux normes, qui peut créer les éléments du site Web sans entrer dans un niveau complexe. En outre, il prend en charge la liaison de données unidirectionnelle et bidirectionnelle, créant ainsi un domaine d'application plus étendu. Polymer offre une excellente alternative pour ceux qui veulent un framework plus léger et plus facilement intégré.
La focalisation conforme aux normes contribue à garantir la longévité de votre application, ainsi que la compatibilité avec d'autres applications ou plateformes. Polymer fonctionne bien avec Progressive Web Apps, qui est de plus en plus important pour les développeurs qui se concentrent sur la connexion de l'expérience mobile avec celle de l'utilisateur de bureau. Puisqu'il est léger, ses temps de chargement sont bien meilleurs que des frameworks qui pèsent plus lourd.
Et vous ?
Quels sont les frameworks JavaScript que vous aimeriez apprendre en 2020 ?
Quels sont ceux que vous utilisez déjà ?
Quels sont les critères qui peuvent vous pousser sur un autre framework (la courbe d'apprentissage, sa popularité au sein des entreprises, sa syntaxe, la curiosité, etc.) ?
Voir aussi :
Quels sont les coûts liés à l'utilisation de frameworks JavaScript pour le développement Web ? Une analyse des sites utilisant React, Vue.js ou Angular
Quels sont les meilleurs langages de programmation pour développer une application mobile ? Petit tour d'horizon sur les plus populaires
Sondage : quels sont les meilleurs conseils pour survivre en tant que consultant ou développeur indépendant ?
Quels sont les meilleurs langages de programmation à apprendre en 2020 ? Voici un classement de ces langages selon le cas d'utilisation
Quels sont les frameworks JavaScript que vous aimeriez apprendre en 2020 ?
Voici quelques propositions qui sont tributaires des cas d'utilisations
Quels sont les frameworks JavaScript que vous aimeriez apprendre en 2020 ?
Voici quelques propositions qui sont tributaires des cas d'utilisations
Le , par Stéphane le calme
55 % | ||
31 % | ||
25 % | ||
16 % | ||
3 % | ||
3 % | ||
2 % | ||
0 % | ||
0 % | ||
0 % | ||
0 % | ||
0 % | ||
7 % |
Une erreur dans cette actualité ? Signalez-nous-la !