JavaScript developers: Here are the key trends and tools
The State of JavaScript 2022 survey of nearly 40,000 developers identified the most popular, emerging, and declining technologies used by JavaScript developers.
The annual Google-sponsored JavaScript survey highlights new front-end frameworks like Solid and Qwik that are challenging stalwarts like React. It also looks at rendering frameworks, testing tools, mobile and desktop development, and various build tools.
The survey rates each technology based on retention rate and number of users. Technologies with high usage and retention rates (a measure of satisfaction based on whether a person continues to use it) are safe to adopt, technologies with low usage and retention are “harder to recommend,” and technologies with high usage are. and retention rates deserve reevaluation if used.
Electronic remains the most widely used toolbox
The library with the highest retention rate in mobile and desktop application development is Tauri, a relatively new open source toolkit for creating cross-platform desktop applications using web-based technologies such as HTML, CSS, and JavaScript. Tauri hit version 1.0 in July, its core libraries are written in Rust, and the project focuses on strengthening security and reducing resource usage. Tauri applications contain a Rust binary that handles windows, web view, and operating system calls. The project is currently working on iOS and Android support.
Electron, the most widely used tool for building cross-platform desktop applications, has seen its retention drop dramatically since 2020. It was the retention leader between 2018 and 2020, but dropped to 75% in 2022, although it is still in first place. 5 for storage, beating React Native by 74%.
However, only 32% of respondents are aware of Tauri and only 5% use them, although usage has doubled in the past year. Electron remains the most used toolkit (35%), with React Native followed by Cordova in second place.
The most used front-end framework is React with 82%, Angular by Google with 48% and Vue.js with 46%. Svelte usage rose to fourth place at 21%, up from 7.8% in 2019. It’s also the first framework developers have said they’re interested in learning.
Svelte and Solid were the leaders with 89% and 90% retention respectively. React’s retention increased to 83% from 89% in 2019, and Angular’s to 42%, but that’s down significantly from 2016’s 68%.
The most used server-side rendering framework was Next.js with 48%, Gatsby with 23% and Next with 18%. However, Astro and SvelteKit lead the retention scale with 92% each, followed by Next.js with 90%. Gatsby retention has dropped from 90% in 2019 to 38% in 2022.
Typescript is gaining popularity
Microsoft’s JavaScript superset, Typescript, has grown in popularity since its release a decade ago, largely due to the popularity of JavaScript. When asked what version of JavaScript they used, 98% of the 27,000 people said they used TypeScript. Elm is in second place with only 2.3%.
There are far more developers using TypeScript than ever using JavaScript. 28% always use TypeScript, compared to 11% who say they always use JavaScript.
The most commonly used non-JavaScript languages by respondents are Python, followed by PHP, Java, Rust, Go, C# and C/C++.
Sarah Drasner, director of web engineering and infrastructure at Google, concludes the report by saying that reduced storage capacity for React, Angular, and Cue is a “sign of maturity.”
“When we look at established frameworks like React, Angular or Vue, we often see a drop in satisfaction and people can wonder what that means for the future. I think this reduction is a function of battle-testing the tool and using it in production, figuring out the rough edges and experiencing the benefits that each tool brings. It’s a sign of maturity and a clear appreciation of what these tools can offer,” writes Sara Drasner.
Source: ZDNet.com
(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/fr_FR/all.js#appId=243265768935&xfbml=1"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));