React reste le framework front-end dominant mais est en perte de vitesse ct satisfaction, jQuery est la troisime bibliot...


Selon les catgoriesCette dition a vu la participation de 39 471 rpondants ont particip au sondage. Un peu plus d’un rpondant sur dix rsidait aux tats-Unis. L’Allemagne et la France viennent en seconde et troisime position des pays de rsidence avec respectivement 5,2 % et 3,7 %. Le top 10 est complt par le Royaume-Uni (3,6 %), l’Inde (3,2 %), le Canada (2,5 %), la Pologne (2,4 %), le Brsil (2 %), l’Espagne (1,9 %) et les Pays-Bas (1,9 %). La Russie, qui tait troisime dans l’dition prcdente, figure en 11e position. D’ailleurs, les langues dans lesquelles les dveloppeurs JavaScript ont rpondu sont  :

/li>/li>/li>/li>/li>

Sacha Greif a fait le commentaire suivant  :

Aprs des annes de stabilit relative, beaucoup commencent maintenant remettre en question le statu quo.De nouveaux frameworks front-end comme Solid et Qwik suggrent que React pourrait ne pas avoir toutes les rponses aprs tout, et ct serveur Astro, Remix et Next.js (entre autres) nous font reconsidrer la quantit de code dont nous avons vraiment besoin pour livrer le client.Nous aurons besoin de toutes les donnes que nous pourrons obtenir si nous voulons donner un sens tout cela, et en fait, l’enqute de cette anne a reu 39 472 rponses massives, soit presque le double de l’anne dernire  ! En raison de cette audience nouvellement largie, vous remarquerez peut-tre des rsultats inattendus, tels que la baisse de certaines fonctionnalits d’une anne sur l’autre en matire de notorit ou d’utilisation.Mais avoir plus de donnes peut potentiellement signifier de nouvelles informations, et c’est pourquoi nous avons dvelopp deux nouvelles faons d’interagir avec notre ensemble de donnes  : l’explorateur de donnes vous permet de croiser deux variables et de mettre en vidence les rsultats aberrants ; tandis que les filtres de graphique vous permettent de filtrer des graphiques spcifiques par salaire, pays, sexe et de nombreuses autres variables dmographiques.Nous avons galement remplac notre catgorie fourre-tout « back-end » par une page de framework de rendu plus spcifique et ajout une nouvelle liste de crateurs de vidos la section Ressources.Enfin, les questions sur les fonctionnalits et les bibliothques ont galement dsormais une fentre contextuelle de commentaires qui vous permet de voir ce que les gens pensent rellement des lments mentionns dans l’enqute  ! Avec tout cela l’cart, dcouvrons ce que JavaScript a fait en 2022  !

Aperu des utilisationsCe graphique prsente les diffrents taux d’adoption pour chaque fonctionnalit, group par catgorie. La taille du cercle externe correspond au nombre total d’utilisateurs qui connaissent une fonctionnalit, alors que le celui interne reprsente ceux qui l’utilisent actuellement.

niveau de comptence dans le vocabulaire de JavaScript ? Les proxy  : l’objet Proxy est utilis afin de dfinir un comportement sur mesure pour certaines oprations fondamentales (par exemple, l’accs aux proprits, les affectations, les numrations, les appels de fonctions, etc.). En 2022, 24,9 % du panel a dclar les avoir dj utiliss contre 26,1 % en 2021, 22,4 % en 2020 et 17,4 % en 2019. 41,5 % du panel en a dj entendu parler, contre 43,5 % en 2021, 39,1 % en 2020 et 39,8 % en 2019.Promise.allSettled()  : La mthode Promise.allSettled() renvoie une promesse qui est rsolue une fois que l’ensemble des promesses de l’itrable passe en argument sont russies ou rejetes. La valeur de rsolution de cette promesse est un tableau d’objets dont chacun est le rsultat de chaque promesse de l’itrable.

12345678910const promise1 = Promise.resolve(3);

const promise2 = new Promise((resolve, reject) => setTimeout(reject, 100, ‘foo’));

const promises = ;

 

Promise.allSettled(promises).

then((results) => results.forEach((result) => console.log(result.status)));

 

// expected output:

// « fulfilled »

// « rejected »

En 2022, 22,3 % du panel a dclar l’avoir dj utilise (contre 19 % et 14,8 % respectivement en 2021 et en 2020) et 40,1 % du panel en avait dj entendu parler (contre 46,4 % et 42,3 % respectivement en 2021 et en 2020).Variables de classe prives  : les champs de classe sont publics par dfaut, mais des membres de classe privs peuvent tre crs l’aide d’un prfixe dise #. L’encapsulation de confidentialit de ces fonctionnalits de classe est applique par JavaScript lui-mme. Les membres privs ne sont pas natifs du langage avant que cette syntaxe n’existe. Dans l’hritage prototypique, son comportement peut tre mul avec des objets WeakMap ou des fermetures, mais ils ne peuvent pas tre compars la syntaxe # en termes d’ergonomie.

#privateField;

# = 42;

 

// …

 

static #privateStaticField;

static # = 42;

 

// …

Les champs privs incluent les champs d’instance privs et les champs statiques privs. Les champs privs sont accessibles sur le constructeur de classe depuis l’intrieur de la dclaration de classe elle-mme. Ils sont utiliss pour la dclaration des noms de champs ainsi que pour accder la valeur d’un champ.En 2022, 25,9 % du panel a dclar s’tre servi des champs privs, contre 20,4 % en 2021 et 10,9 % en 2019.API navigateurService workers  : les service workers jouent essentiellement le rle de serveurs proxy placs entre une application web, et le navigateur ou le rseau (lorsque disponible.) Ils sont destins (entre autres choses) permettre la cration d’expriences de navigation dconnecte efficaces, en interceptant les requtes rseau et en effectuant des actions appropries selon que le rseau est disponible et que des ressources mises jour sont disposition sur le serveur. Ils permettront aussi d’accder aux APIs de notifications du serveur (push) et de synchronisation en arrire-plan.Un service worker est un worker vnementiel enregistr auprs d’une origine et d’un chemin. Il prend la forme d’un fichier JavaScript qui peut contrler la page ou le site web auquel il est associ, en interceptant et en modifiant la navigation et les requtes de ressources, et en mettant en cache les ressources selon une granularit trs fine pour vous donner une matrise complte de la manire dont doit se comporter votre application dans certaines situations (l’une des plus videntes tant l’indisponibilit du rseau.)Un service worker fonctionne dans le contexte d’un worker  : il n’a donc pas d’accs au DOM, et s’excute dans une tche diffrente de celle du script principal de votre application, ainsi il est non-bloquant. Il est conu pour tre totalement asynchrone ; en consquence, des APIs telles que XHR en synchrone et localStorage ne peuvent pas tre utilises au sein d’un service worker.Les service workers fonctionnent uniquement sur HTTPS, pour des raisons de scurit. Laisser des requtes rseau modifies sans dfense face aux attaques de l’homme du milieu est une bien mauvaise chose.En 2022, 40,8 % du panel a dclar les avoir dj utiliss, contre 45,7 % dans l’dition prcdente.

Intl  : l’objet Intl est l’espace de noms pour l’API d’Internationalisation d’ECMAScript. Elle fournit des outils de comparaison de chanes de caractres, de formatage des nombres, de dates et de l’heure selon les langues. Intl donne accs plusieurs constructeurs et fonctionnalits communes aux constructeurs destins l’internationalisation et d’autres fonctions dpendantes des langues.En 2022, 38,2 % du panel a dclar l’avoir dj utilis, contre 36 % dans l’dition prcdente.WebGL  : WebGL permet d’afficher, de crer et de grer dynamiquement des lments graphiques complexes en 3D dans la fentre du navigateur web d’un client. Il est actuellement implment dans la plupart des grands navigateurs modernes, mais cette implmentation est rcente, d’o le fait que cette technologie reste assez mconnue du grand public. Lorsquun lment graphique de type WebGL est inclus dans une page web, le navigateur excute un programme en JavaScript utilisant l’interface WebGL. La bibliothque WebGL appelle son tour le pilote OpenGL ES du systme d’exploitation qui se chargera de faire les calculs ncessaires l’affichage sur l’cran, en exploitant si possible l’acclration matrielle du ou des processeurs graphiques du terminal. En 2022, 20 % du panel a dclar l’avoir utilis, contre 21,6 % en 2021 et 17,5 % en 2020.Autres Web App  : les applications Web progressives utilisent des API Web modernes ainsi qu’une stratgie d’amlioration progressive traditionnelle pour crer des applications Web multiplateformes. Ces applications fonctionnent partout et fournissent quelques fonctionnalits qui donnent l’exprience utilisateur les mmes avantages que les applications natives. Pour qu’une application Web soit considre comme un PWA, techniquement parlant, il devrait prsenter les caractristiques suivantes  : Secure contexts (HTTPS), un ou plusieurs Service Workers et un fichier manifest.

WebAssembly  : WebAssembly est un nouveau type de code qui peut tre excut dans un navigateur web moderne. C’est un langage bas niveau, semblable l’assembleur permettant d’atteindre des performances proches des applications natives (par exemple crites en C/C++) tout en fonctionnant sur le Web. WebAssembly est conu pour fonctionner en lien avec JavaScript.WebAssembly permet d’excuter du code (ventuellement crit depuis diffrents langages) sur le Web avec des performances similaires aux applications natives. WebAssembly est conu pour tre utilis de pair avec JavaScript. Grce l’API JavaScript WebAssembly, on peut charger des modules WebAssembly au sein d’une application JavaScript et partager des fonctionnalits entre les deux. Cela permet de tirer parti des performances de WebAssembly et de la flexibilit de JavaScript, mme si on ne sait pas crire du code WebAssembly.

Bibliothques et frameworksFrameworks front-endReact reste le framework le plus utilis, suivi par Angular, Vue.js, Svelte et Preact. Le trio de tte n’a pas chang depuis l’dition 2017. En revanche, en termes de satisfaction dans l’utilisation des frameworks, Solid, Svelte et Quick se place respectivement en premire, seconde et troisime place. React quitte le trio de tte pour se retrouver la quatrime place suivi par Vue.js. Frameworks axs sur le rendu et le service de votre applicationDu ct des frameworks axs sur le rendu et le service de votre application, Next.js conserve la premire place qu’il a acquise depuis l’dition 2018. En fait, le trio de tte est le mme depuis l’dition 2020  : il s’agit respectivement de Next.js, Gatsby et Nuxt. Cependant, en termes de satisfaction dans l’utilisation des frameworks, c’est Astro qui est en tte, suivi par SvelteKit et Next.js ferme la marche du top 3. Bibliothques les plus Drasner, Directrice de l’ingnierie et de l’infrastructure Web pour le compte de Google, a dclar  :

Solid a explor de nouvelles approches de la ractivit Bravo  !

Source  : rsultats de l’enquteEt vous ? Que pensez-vous des conclusions de cette enqute ?

Si oui, lesquelles ? Quelles sont vos impressions ?

Selon vous, quelles fonctionnalits manquent encore JavaScript ?

test, dveloppement mobile et desktop, etc.) ?