En tant que nouveau développeur, le nombre de bibliothèques et de frameworks disponibles peut être écrasant.
Comment savoir lesquels vous devez apprendre à utiliser ? Lesquels seront les plus utiles dans votre carrière de codeur ? Dans ce billet invité spécial, Erik Hanchett nous donne un aperçu de ses dix meilleures bibliothèques et frameworks JavaScript.
Voici Erik !
–
Dans ce billet, nous allons discuter de 10 bibliothèques et frameworks JavaScript et de leur utilité. J’ai essayé de choisir certaines des bibliothèques et des frameworks JS les plus populaires, plus quelques-uns dont vous n’avez peut-être pas entendu parler auparavant.
Cette liste est destinée à servir d’introduction pour les débutants, afin que vous puissiez avoir une idée de ce qui existe et pourquoi vous devriez utiliser ces frameworks et bibliothèques JavaScript. Lorsque vous travaillez en tant que développeur web, vous avez beaucoup d’options, ce qui rend important de savoir quelles bibliothèques et quels frameworks JS sont les meilleurs pour quels scénarios.
Table des matières
– jQuery
– Underscore and Lodash
– D3.js
– React
– Glimmer
JS Frameworks
– Bootstrap
– Angular et AngularJS
– Ember.js
– Aurelia
– Vue.js
Divulgation : je suis un fier affilié de certaines des ressources mentionnées dans cet article. Si vous achetez un produit via mes liens sur cette page, je peux recevoir une petite commission pour vous avoir référé. Merci !
Quelle est la différence : Bibliothèques JavaScript vs. Frameworks
Une question que j’entends assez souvent est « Quelle est la différence entre les bibliothèques JavaScript et les frameworks ? » C’est une bonne question, et il y a beaucoup de discussions à ce sujet en ligne. Je vais couvrir les différences brièvement, mais vous pouvez trouver des guides plus approfondis ici, ici et ici.
Qu’est-ce que les bibliothèques JavaScript ?
Généralement, une bibliothèque JS est un morceau de code réutilisable qui a souvent un cas d’utilisation principal. Une bibliothèque peut être constituée de plusieurs fonctions/objets/méthodes, selon le langage. Votre application peut se » lier » à une bibliothèque pour vous permettre d’accéder à cette fonctionnalité.
Qu’est-ce que les frameworks JavaScript ?
D’autre part, un framework JS a plus de contrôle sur votre application. Il permet de vous orienter sur l’architecture et le projet qui en découle. Les frameworks se composent de plusieurs bibliothèques et ils vous fournissent des crochets et des callbacks, de sorte que vous pouvez continuer à construire sur eux.
Les frameworks et les bibliothèques JavaScript sont tous deux utiles et c’est une bonne idée d’expérimenter et de voir ceux qui fonctionnent le mieux pour vous.
Avez-vous une bibliothèque ou un framework JavaScript que vous aimez et que je n’ai pas couvert ? Laissez un commentaire ci-dessous !
Liste des bibliothèques JavaScript
Commençons par les bibliothèques !
jQuery : Un vieux classique (mais est-il obsolète ?)
Dans le monde du JavaScript, jQuery reste, de loin, l’une des bibliothèques les plus prolifiques et les plus populaires qui existent. Elle a été publiée en 2006 par John Resig et a été utilisée dans des sites web du monde entier. Selon certaines estimations, plus de 50 % de tous les sites Web connus utilisent jQuery. Cela représente des centaines de millions (voire des milliards) de sites Web. Qu’est-ce que jQuery ? jQuery est une bibliothèque utilisée principalement pour la manipulation du Document Object Model (DOM). Le DOM est une structure arborescente qui représente tous les éléments d’une page web.
La bibliothèque jQuery peut sélectionner des éléments du DOM, créer des animations, gérer des événements, et plus encore. Son objectif est d’être extensible, simple et clair à utiliser. Elle prend en charge toutes les incompatibilités entre navigateurs, et elle favorise la séparation du HTML et du JavaScript.
Devriez-vous utiliser jQuery ? Eh bien, cela dépend. Certains sites web insistent sur le fait que jQuery n’est plus nécessaire. Les navigateurs modernes ont grandement amélioré leurs interfaces de programmation d’applications (API) DOM. Dans le passé, vous pouviez utiliser jQuery pour effectuer de simples sélections de requêtes. Vous pouvez maintenant facilement le faire avec le bon vieux JavaScript.
De plus, avec la popularité des frameworks d’applications à page unique (SPA), il n’est pas judicieux d’utiliser jQuery dans de nombreuses circonstances. Par exemple, la plupart des SPA ont une sorte de gestion des événements intégrée. Utiliser jQuery pourrait causer plus de mal que de bien dans ces cas-là.
Au minimum, vous devriez apprendre les bases de jQuery en tant que nouveau développeur web. Vous rencontrerez presque certainement des bases de code plus anciennes qui utilisent jQuery, et cela s’avère pratique dans d’autres scénarios de temps en temps.
Où l’apprendre : les bases de jQuery sur Team Treehouse
Ce que le cours couvre : Les principes fondamentaux de la manipulation d’éléments sur une page Web et la réponse aux interactions de l’utilisateur – avec jQuery.
Les faits du cours :
- Nom du cours : jQuery basics
- Plateforme : Team Treehouse
- Instruit par : Trésor Porth
- Prix : 25 $/mois avec un abonnement à Team Treehouse
Niveau de compétence : Débutant
Retournez à la table des matières «
Underscore et Lodash : Bibliothèques JS utilitaires
En 2009, Jeremy Ashkenas a créé Underscore. Underscore est une bibliothèque utilitaire qui se compose de plus de 100 fonctions. Ces fonctions vous aideront à manipuler des tableaux, des objets et d’autres fonctions.
L’une des caractéristiques les plus puissantes d’Underscore est ses aides à la programmation fonctionnelle. Par exemple, map, filter et reduce sont parmi les plus populaires. La programmation fonctionnelle (PF) est un paradigme de programmation qui évite de changer d’état et de muter les données. La PF est devenue de plus en plus populaire au cours des dernières années, mais cela dépasse le cadre de cet article aujourd’hui.
En 2012, Lodash a eu sa première version initiale. John-David Dalton a créé cette bibliothèque pour avoir un support d’itération inter-environnements plus cohérent pour les tableaux, les chaînes de caractères et les objets arguments.
Dans le processus, Lodash est devenu un surensemble d’Underscore avec plus de fonctionnalités et une meilleure documentation. Aujourd’hui, la plupart des développeurs sont passés d’Underscore à Lodash. Même de nombreux contributeurs d’Underscore travaillent désormais sur Lodash.
Certains craignent que Lodash ne soit plus nécessaire à mesure que JavaScript a évolué. Au fur et à mesure que la norme JavaScript évolue, les nouvelles versions ont inclus certains des utilitaires que vous aviez l’habitude de ne pouvoir obtenir qu’à partir de bibliothèques externes comme Lodash et Underscore.
Néanmoins, Lodash et Underscore sont d’excellentes bibliothèques qui sont particulièrement utiles pour toute application FP.
Où l’apprendre : Underscore.js Fundamentals sur Pluralsight
Ce que le cours couvre : Comment manipuler et contrôler les collections, les tableaux, les objets et les fonctions JavaScript – avec Underscore.js.
Les faits du cours :
- Nom du cours : Underscore.js Fundamentals
- Plate-forme : Pluralsight
- Instruit par : Craig Shoemaker
- Prix : 29 $/mois avec un abonnement Pluralsight
Niveau de compétence : Intermédiaire
Retournez à la table des matières «
Commencez à coder maintenant
Arrêtez d’attendre et commencez à apprendre ! Obtenez mes 10 conseils pour apprendre à coder par vous-même.
D3.js : une bibliothèque pour les graphiques et les visualisations
D3.js est une bibliothèque JavaScript pour la visualisation des données. Cette bibliothèque a été développée en 2011 à partir d’un précédent projet appelé Protovis. Mike Bostock, Jeff Heer et Vadim Ogievetsky ont développé D3.js pour qu’il soit plus expressif que son prédécesseur et plus conforme aux normes web actuelles.
D3.js est un outil formidable lors de la création de visualisations personnalisées. Il peut s’agir de quelque chose d’aussi simple qu’un diagramme à barres, ou d’aussi complexe qu’un tracé de surface en 3D. La bibliothèque dispose d’une API puissante qui utilise des sélecteurs, un peu comme ceux que vous verriez dans jQuery. Après avoir sélectionné un élément dans le DOM, vous pouvez faire toutes sortes de transitions et de manipulations.
D3 5+ la dernière version de D3, est une collection de 52 modules différents. Chacun a un objectif différent. Certains facilitent le travail avec les couleurs ; d’autres travaillent avec le glisser-déposer d’éléments SVG.
Si vous cherchez à faire n’importe quel type de visualisation, c’est la bibliothèque JS à consulter !
Où l’apprendre : Visualisation de l’information : Programming with D3.js on Coursera
Ce que le cours couvre : Les bases de la création de visualisations avec D3.js, y compris un système de visualisation entièrement fonctionnel pour visualiser les routes aériennes.
Les faits du cours:
- Nom du cours : Visualisation de l’information : Programmation avec D3.js
- Plate-forme : Coursera
- Instruit par : Enrico Bertini et Cristian Felix
- Prix : 39 $/mois avec un abonnement à Coursera
Niveau de compétence : Débutant
Retournez à la table des matières «
React : La bibliothèque Javascript préférée de Facebook
En mars 2013, Jordan Walke a publié React alors qu’il travaillait chez Facebook. Depuis, React est devenu l’une des bibliothèques frontales les plus populaires et est utilisé dans des centaines de milliers de sites Web dans le monde.
React (ou React.js comme on l’appelle parfois) est une bibliothèque open-source soutenue par Facebook. Elle est utilisée pour aider à créer des applications web à petite ou grande échelle et est particulièrement utile pour créer des sites web interactifs. Sa tag line est « Une bibliothèque JavaScript pour la création d’interfaces utilisateur ».
React est parfois appelée SPA, ou application monopage. Ce terme désigne les applications web qui peuvent tenir sur une seule page web et ne nécessitent pas de rafraîchissements constants du navigateur web. Le contenu est chargé dynamiquement lorsque cela est nécessaire en utilisant JavaScript.
Il utilise des composants, qui aident à encapsuler le code et l’état. L’utilisation de composants facilite la construction d’interfaces utilisateur compliquées.
React utilise JSX, qui est une syntaxe de type XML qui combine JavaScript et HTML. Il ne s’agit pas d’un langage de templating ; c’est du JavaScript à part entière. Certains nouveaux développeurs pourraient trouver JSX un peu déroutant au début. Cependant, après avoir travaillé avec pendant un certain temps, vous comprendrez à quel point il est avantageux. Par exemple, JSX permet d’envelopper facilement des expressions JavaScript directement à l’intérieur de votre HTML.
React a beaucoup d’atouts, et c’est définitivement une bibliothèque à surveiller si vous êtes dans le développement web frontal.
Où l’apprendre ? Mastering React on Code With Mosh
Ce que le cours couvre : Comment construire et déployer des applications React rapides et interactives en toute confiance, y compris React Native (pour construire des applications mobiles).
Faits du cours:
- Nom du cours : Mastering React
- Plate-forme : Code With Mosh
- Instruit par : Mosh Hamedani
- Prix : 29 $ pour le cours complet
Niveau de compétence : Débutant
Retournez à la table des matières «
Glimmer.js : Bibliothèque avec composants d’interface utilisateur pour le Web
Glimmer.js est un nouveau venu relatif dans l’écosystème des bibliothèques JavaScript. Elle a été développée par les mêmes personnes qui vous ont apporté Ember.js et a été publiée début 2017. Son slogan est « Composants d’interface utilisateur rapides et légers pour le web ».
Glimmer.js a été construit par l’équipe d’Ember comme une réponse aux développeurs qui voulaient quelque chose de plus petit et de plus léger qu’Ember.js. Comme discuté lors de la keynote de l’EmberConf 2017, Tom Dale a entendu certaines critiques à l’égard d’Ember.js et s’en est servi pour aider à construire Glimmer.js.
Glimmer.js présente des composants plus légers et une taille plus petite, et il utilise la robuste CLI d’Ember. Il peut être utilisé avec Ember.js en tant que composant, il peut fonctionner de manière autonome, ou il peut être ajouté en tant que composant web à une application existante.
Nous en sommes aux premiers jours de Glimmer.js, mais je suis impatient de voir où il va !
Liste des frameworks Javascript
Nous allons maintenant nous intéresser aux frameworks.
Bootstrap : Framework JavaScript pour ceux qui n’aiment pas le design
Bootstrap est un framework front-end open-source pour vous aider à concevoir des sites web. Sur le site web de Bootstrap, le slogan est « Bootstrap est le framework HTML, CSS et JS le plus populaire pour développer des projets responsive, mobile-first sur le web ».
Il était initialement nommé Twitter Blueprint et a été développé par Mark Otto et Jacob Thornton alors qu’ils travaillaient chez Twitter. Sa première version initiale date de 2011.
La plus grande force de Bootstrap est la facilité avec laquelle les non-designers peuvent créer rapidement des sites Web d’apparence décente. Sans compter que Bootstrap facilite la création de designs responsives (sites web qui s’ajustent dynamiquement en fonction de l’appareil utilisé : tablettes, téléphones mobiles, etc).
Il comporte un certain nombre de styles CSS, d’icônes, de composants et de plugins JavaScript. Ces plugins comprennent un grand nombre de choses courantes que vous pourriez utiliser lors de la construction d’un site Web. Cela inclut les modales, les dropdowns, les alertes et les boutons, pour n’en citer que quelques-uns.
Il y a eu quelques critiques à l’égard de Bootstrap. Une critique que je vois beaucoup est qu’en raison de sa popularité, il y a beaucoup de sites Web construits sur Bootstrap qui se ressemblent beaucoup, ce qui rend plus difficile la construction d’un site Web d’apparence unique. Gardez cela à l’esprit.
Si vous commencez à apprendre le développement web mais que vous n’êtes pas dans l’aspect design, consultez Bootstrap.
Où l’apprendre : Le guide complet de Bootstrap 4 : Beginner to Advanced
Ce que couvre le cours : Comment utiliser Bootstrap pour mettre en œuvre des pages web mobile first avec CSS et JavaScript.
Les faits du cours :
- Nom du cours : Le guide complet de Bootstrap 4 : Beginner to Advanced
- Plate-forme : Udemy
- Instruit par : Andrew Whitworth
- Prix : 174,99 $ (mais Udemy fait souvent des soldes)
Niveau de compétence : Intermédiaire
Retourner à la table des matières «
Angular et AngularJS : le framework JavaScript de Google
AngularJS, également connu sous le nom d’AngularJS 1.x, est un framework JavaScript open-source créé et maintenu par Google. Sa version initiale date de 2010.
AngularJS est un framework frontal qui vous aide à créer des applications web. C’est également un framework SPA similaire à React ou Ember.js.
AngularJS utilise des directives qui peuvent être insérées dans le HTML pour donner plus de fonctionnalités à l’application. Il prend également en charge la liaison de données bidirectionnelle.
Angular, parfois connu sous le nom d’Angular 2+, est un framework front-end open-source basé sur TypeScript. Il s’agit d’une réécriture complète d’AngularJS. Il est plus modulaire, il recommande l’utilisation de TypeScript, et une syntaxe d’expression plus simple.
Au début, beaucoup de gens étaient inquiets que Google abandonne Angular 1 quand Angular 2+ est apparu. Heureusement, il semble que les deux projets soient maintenus.
Alors, par quoi devriez-vous commencer, Angular 1 ou Angular 2+ ? Je recommanderais de commencer avec 1, car il y a beaucoup plus d’emplois pour 1 en ce moment. En général, Angular est un excellent framework à examiner si vous êtes un nouveau dev.
Où l’apprendre : Apprenez AngularJS 1.X sur Codecademy
Ce que le cours couvre : Appliquez votre compréhension de HTML et JavaScript pour construire des applications web à page unique avec AngularJS. Vous serez initié au modèle de programmation Modèle-Vue-Contrôleur (MVC) et aurez la chance de construire votre propre application à partir de zéro.
Faits du cours:
- Nom du cours : Apprendre AngularJS 1.X
- Plate-forme : Codecademy
- Instruit par : Plusieurs instructeurs
- Prix : 19,99 $/mois avec un abonnement Codecademy Pro
Niveau de compétence : Intermédiaire (solides bases en JavaScript et connaissances de base en HTML requises)
Retour à la table des matières «
Ember.js : le framework JavaScript à piles incluses
Ember.js est un framework JavaScript open-source qui a été initialement publié en 2011 par Yehuda Katz. Il était initialement connu sous le nom de SproutCore 2.0 avant d’être connu sous le nom d’Ember.js.
Ce n’est pas un secret qu’Ember.js est l’un de mes frameworks préférés. J’ai même écrit un livre à son sujet ! La principale chose que j’ai aimée à propos d’Ember est sa mentalité de » batteries incluses « . Ember dispose d’un excellent outil de construction, que de nombreux autres frameworks SPA ont emprunté, appelé Ember CLI.
Cet outil de construction offre tout ce dont vous avez besoin pour démarrer. Vous avez besoin d’un routeur ? Il est intégré. Besoin de tests ? C’est également intégré. Besoin de travailler avec des données provenant d’un back-end ? Il y a Ember Data.
Ember.js suit beaucoup des mêmes principes que Ruby on Rails. Il est très opiniâtre, flexible et préfère les conventions à la configuration.
Ember.js ne fait que s’améliorer, et je le recommande vivement.
Où l’apprendre : Formation essentielle Ember.js sur LinkedIn Learning
Ce que le cours couvre : Intro aux routeurs et modèles d’Ember, ainsi que la façon de construire un nouveau projet à partir de zéro, en utilisant des modèles pour créer des pages simples et charger dynamiquement le contenu avec des composants et des aides.
Faits du cours:
- Nom du cours : Formation Ember.js Essential
- Plate-forme : LinkedIn Learning
- Instruit par : Justin Yost
- Prix : 34,99 $
Niveau de compétence : Intermédiaire
Retourner à la table des matières «
Aurelia : le framework JavaScript tourné vers l’avenir
Aurelia est un framework front-end, open-source, créé par Rob Eisenberg. Aurelia 1.0 a été publié pour la première fois en 2016.
Le slogan d’Aurelia est « Un framework JavaScript pour le mobile, le bureau et le web, tirant parti de conventions simples et donnant du pouvoir à la créativité ».
Aurelia est un autre SPA comme React, Angular et Ember.js. Il est puissant et composable. Vous pouvez utiliser un ou tous ses différents modules pour créer votre application. Il offre également le routage, la liaison de données bidirectionnelle.
Aurelia est un framework très avant-gardiste. Il utilise beaucoup de fonctionnalités ECMAScript plus récentes (ECMAScript aide à dicter les normes JavaScript), et vous encourage à écrire votre code en utilisant ces nouvelles fonctionnalités. C’est une bonne chose, puisque vous n’apprenez pas une syntaxe personnalisée qui ne fonctionnera qu’avec Aurelia.
Check it out if this sounds interesting to you!
Where to learn it : Les fondamentaux d’Aurelia sur Pluralsight
Ce que le cours couvre : Comment tirer parti de toutes les fonctionnalités clés d’Aurelia, notamment la composition de l’interface utilisateur, la liaison de données bidirectionnelle, le routage et la navigation côté client, et plus encore.
Faits du cours:
- Nom du cours : Aurelia Fundamentals
- Plate-forme : Pluralsight
- Instruit par : Brian Noyes
- Prix : 29 $/mois avec un abonnement Pluralsight
Niveau de compétence : Intermédiaire
Retournez à la table des matières «
Commencez à coder maintenant
Arrêtez d’attendre et commencez à apprendre ! Obtenez mes 10 conseils pour apprendre à coder par vous-même.
Vue.js : le framework JavaScript progressif
Vue.js est un framework JavaScript progressif open-source créé initialement par Evan You en 2014 alors qu’il travaillait pour Google. Depuis lors, Vue.js a beaucoup évolué. Il a été réécrit et affiné pour devenir un excellent SPA.
L’une des plus grandes forces de Vue est sa progressivité. En d’autres termes, vous pouvez ajouter progressivement Vue dans votre application. Contrairement à AngularJS et Ember, vous pouvez facilement mélanger Vue dans des projets.
Certaines de ses caractéristiques comprennent des composants, des modèles, des transitions et des liaisons de données bidirectionnelles, ainsi qu’un accent sur la réactivité.
La réactivité se produit lorsque vous modifiez ou mettez à jour l’un des objets JavaScript de Vue. Cela entraîne à son tour la mise à jour des modèles de Vue. Vue.js utilise quelque chose appelé Shadow DOM qui rend le rendu de la page rapide.
J’ai eu beaucoup de temps pour travailler sur Vue. En fait, j’ai écrit un livre sur le sujet !
Où l’apprendre : Vue – Le guide complet (avec Router, Vuex, Composition API) sur Udemy
Ce que le cours couvre : Comment construire des applications Vue.js – depuis les petites et simples jusqu’aux grandes, au niveau de l’entreprise.
Faits du cours:
- Nom du cours : Vue – The Complete Guide (w/ Router, Vuex, Composition API)
- Plate-forme : Udemy
- Instruit par : Maximilian Schwarzmüller
- Prix : 189,99 $ (mais Udemy a souvent des soldes)
Niveau de compétence : Intermédiaire
Vous êtes prêt à améliorer encore plus vos compétences en JavaScript ? Consultez le programme de nanodiplôme JavaScript intermédiaire d’Udacity pour apprendre un ensemble plus avancé de compétences JavaScript.
Retournez à la table des matières »
TL;DR : Les bibliothèques et frameworks JavaScript les plus populaires
Pour ceux d’entre vous qui sont nouveaux dans le développement web – vous entendrez beaucoup de personnes cyniques parler de la façon dont le monde JavaScript est devenu trop rapide. Ils gémiront que de nouvelles bibliothèques et de nouveaux frameworks JavaScript sortent trop rapidement et que tout le monde essaie de faire la même chose.
Ils n’ont pas tort de dire que le rythme est rapide, mais cela ne doit pas vous empêcher de sortir et d’apprendre ces frameworks et bibliothèques JavaScript. Je ne vous ai donné qu’un avant-goût de chacun d’entre eux. C’est à vous d’en choisir un et de commencer à apprendre.
Lorsque j’encadre de nouveaux développeurs, je leur recommande de choisir une équipe. Après avoir appris les bases (HTML, JavaScript et CSS), vous avez beaucoup de choix. N’essayez pas de tout faire en même temps, cependant : choisissez un framework et devenez bon dans ce domaine. Vous n’avez pas besoin de tous les apprendre. Vous devez juste en apprendre au moins un pour pouvoir mettre le pied dans la porte quelque part.
Bonne chance !
À propos de l’auteur
Erik Hanchett est un développeur de logiciels, YouTuber, blogueur et aficionado de sushis. Il écrit du code depuis plus de 10 ans. Erik est l’auteur de deux livres, Ember.js Cookbook et Vue.js in Action, qui sera bientôt publié. Il réside actuellement à Reno, dans le Nevada, avec sa femme et ses deux enfants. Vous pouvez trouver plus d’informations d’Erik sur son blog http://www.programwitherik.com.
Note : il y a des liens affiliés dans ce billet.