2024 年の JavaScript と TypeScript のトレンド: 開発者エコシステムアンケートのインサイト
JetBrains は過去 7 年間にわたり、変化し続ける開発者の状況と使用されている主要テクノロジーを関連付けるために開発者エコシステムアンケートを実施してきました。 その結果は生データと分析レポートの両方の形式でコミュニティと共有され、すべての関係者がこのエコシステムの状況を把握できるようになっています。 本日は今年の調査結果を JavaScript と TypeScript に焦点を当てて確認したいと思います。
アンケートの概要
2023 年の開発者エコシステムアンケートでは、世界中の 26,348 人の開発者からインサイトを収集しました。 このアンケートの結果を自分で確認し、プログラミング言語やツール、テクノロジーから回答者に関する有用な情報や豆情報に至るまで広範なトピックを網羅した情報を入手できます。 私たちは開発者独特のライフスタイルにも注目し、その情熱や興味を明らかにする予定です。 アンケートはできるだけ公正かつ代表的なものにするため、データをクリーニングしてバイアスを排除するための複数の段階を含む方法で実施しました。 実際に使用した方法についてはこちらをご覧ください。
JavaScript のインサイト
JavaScript の使用に関するトレンド
今回も JavaScript が 2023 年に最も使用されているプログラミング言語という結果になりました。7 年連続で使用言語のトップを維持しています。 これは、JavaScript が多くのフロントエンドウェブ開発の原動力となる障壁の低い言語であるためだと思われます。 興味深いことに、そのシェアはここ 3 年間毎年少しずつ低下しています。この低下は TypeScript の採用が増えると同時に発生しているため、将来的な変化の兆しである可能性があります。

JavaScript ユーザーがよく開発しているもの
JavaScript 開発者の 80% は主にウェブサイトに取り組んでいます。 JavaScript で 2 番目によく開発されているソフトウェア製品はユーティリティ(小さなタスクに使用する小さなアプリ)です。 その他の種類のソフトウェアの開発に JavaScript を使用している人はわずかでした。 データを主に 2 つの開発部門に分けると、JavaScript 開発者の 86% がフロントエンドプロジェクトに、34% がバックエンドにも従事していました。

JavaScript と TypeScript のコードエディターと IDE
アンケートの結果より、回答者の大半(51%)が JavaScript と TypeScript の開発に Visual Studio Code を使用していることがわかりました。 2 番目によく使用されているツールは WebStorm(21%)で、僅差で「別の IntelliJ ベース IDE」(16%)が続いていました。この回答には PyCharm、IntelliJ IDEA、GoLand、および PhpStorm などの各種 JetBrains IDE 製品が含まれています。

コードエディターと IDE のどちらを使用すべきか迷っているなら、その答えはシンプルです。両方を使用し、作業中のタスクに応じて切り替えればいいのです。 コードエディターは簡単な編集や比較的小規模なプロジェクトに適していますが、大規模なプロジェクトや複雑なタスクに取り組む場合は IDE の方が頼りになります。
JavaScript フレームワークの好み
JavaScript フレームワークとライブラリは JavaScript 開発者コミュニティ内で普及しており、使用していないと回答した JavaScript 開発者はわずか 8% でした。 フレームワークとライブラリは複雑な対話型ウェブアプリケーションの構築を単純化するツールと構造を開発者に提供します。 これらのフレームワークのうち、明らかに人気なのは React であり、JavaScript 開発者の 57% が使用しています。 アンケートによると、2 番目によく使用されているのは Vue(32%)で、3 番目は Next.js(27%)でした。 Angular と Express(20%)はともに 4 位で並んでいます。

通常、フロントエンド開発で最も一般的な 3 大フレームワークは React、Angular、Vue です。 どのフレームワークを選択するかは、主にプロジェクトの具体的な要件とチームの好みによって決まります。
React が最も使用されているフレームワークである理由
- React は 2013 年 5 月 29 日に初めてリリースされました。 市場に出た最初のフレームワークではありませんでしたが、概して確かな実績を持つ最初の大きなフレームワークであることが有利に働きました。 これにより、早期の大量採用が始まりました。 このフレームワークはニーズに合わせて進化し続けているため、早い段階で習得した開発者はそのまま使用を継続できました。
- React は他の UI フレームワークと同様、UI が再利用可能なコンポーネントのツリーとして構築されるコンポーネントベースのアーキテクチャを採用しています。 このモジュール方式により、コードの管理と保守だけでなく、アプリケーションの各所でコードの再利用を簡単に行えるようになっています。
- React は JavaScript の拡張構文である JSX を使用します。 JSX では開発者が HTML のようなコードを JavaScript 内で記述できます。ほとんどのユーザーが関連する概念に精通しているため、快適に開発できます。
- React は柔軟性に優れており、小さなシングルページアプリケーションから大規模で複雑なウェブアプリケーションに至るまでさまざまなプロジェクトタイプで使用できます。 その柔軟性により、多様な開発シナリオに適した選択肢となっています。
モジュールバンドラー
モジュールバンドラーは JavaScript 開発者にとって有益なツールです。 ファイルとアセットを互いに認識し合うようにバンドルできるだけでなく、依存関係をマッピングすることも可能です。 モジュールバンドラーはリゾルバーと同様、一般的には初期化時にすべての依存関係が機能するのに必要なファイルが使用可能であることを確認します。 その後、モジュール内の各ファイルを処理して依存関係グラフを構築する仕組みになっています。
これが完了すると、モジュールバンドラーはこのような複数のモジュールを ‘output’ 構成パラメーターで指定された 1 つのファイルに統合し、必要な場合に正しく呼び出し/実行できるようにすべてのモジュールのレジストリを管理します。

2023 年に 1 位となったモジュールバンドラーは webpack で、JavaScript 開発者の 57% が使用していました。 webpack は約 10 年前から存在しており、絶えず進化しながら変化し続ける開発者のニーズを満たしています。 ですが、より最小限の構成により優れたパフォーマンスを求める開発者が増えているため、Vite(38%)や esbuild(11%)などの代替手段が広く採用されるようになってきています。
ユニットテスト
WebStorm デベロッパーアドボケイトの Jan Niklas Wortmann は失望していたとおり、ユニットテストは JavaScript 開発者の間ではまったく一般的ではなく、回答者の 32% がユニットテストを作成していませんでした。 作成している回答者の大多数は Jest を選んでおり、40% を占めていました。 Cypress は 15% で 2 番目によく使用されているフレームワークで、Mocha、Vitest、および Playwright は 10% 程度が使用していました。 Jest は概して簡単であり、運用に乗せるために構成する必要はありません。 ユニットテストが採用されていない大きな理由はそれだと思われます。とっつきにくく感じられ、採用する際の障壁が高いのです。

JavaScript 開発者が直面している課題
JavaScript には依然として固有の課題がありますが、コミュニティはその対応に継続して取り組んでいます。 たとえば、非同期モデルは async/await の導入によって改善されました。 ライブラリとフレームワークのリリース頻度は低下しており、それを追うのに疲れることはなくなってきています。主要なライブラリとフレームワークは互いに感化しながら成熟していっている状況です。 好き嫌いに関係なく、JavaScript には強力な型付けの仕組みがありません。これは引き続き解決が必要な問題ではありますが、TypeScript が現われたことで、開発者は簡単に実装可能な代替手段を使用できるようになりました。
TypeScript のインサイト
TypeScript の採用と成長
JavaScript は開発者が頻繫かつ効果的に活用してきた動的型付け言語ですが、これは実行時にのみエラーが発見されることが広く受け入れられているということを示しています。 現在は全体的な開発者エクスペリエンスが向上し、開発者がコードに自信を持てるより型安全な TypeScript への移行が進んでいます。 この事実は TypeScript の採用が年々増加していることだけでなく、開発者が TypeScript を使用する目的が JavaScript と重なっていることからもわかります。

JavaScript から TypeScript に切り替える理由
TypeScript は静的型付けが備わった JavaScript のスーパーセットであり、JavaScript プロジェクトとの互換性を維持するように設計されています。また、既存のプロジェクトを段階的に移行するのにも便利です。 TypeScript も ECMAScript 規格に準拠しており、多くの場合は最新の JavaScript 機能をサポートしています。 つまり、開発者は未来の JavaScript 仕様の機能をブラウザーで広くサポートされる前から使用できるのです。 TypeScript の現在の安定版リリースは 5.3.2 で、2024 年 3 月には TypeScript 5.4 がリリースされる予定です。
まとめ
JavaScript と TypeScript エコシステムは進化し続けます。 2016 年当時とはまったく異なり、現在はテクノロジー、フレームワーク、言語、ライブラリが成熟し始めており、開発者の好みに共通点や傾向が現れつつあります。 WebStorm のようなツールは開発者がコードを最大限に活用し、JavaScript や TypeScript を効果的に扱えるように成長と改善を続けていくでしょう。 弊社はこのエコシステムの問題や限界を解決するため、新しく革新的なテクノロジーが開発され続けることを願っています。 この目標を念頭に置き、エコシステムと私たちと同じ開発者のニーズに合わせて製品を更新し続けていきます。
オリジナル(英語)ブログ投稿記事の作者:
Subscribe to WebStorm Blog updates
Discover more
2024 年 JavaScript 和 TypeScript 趋势:开发者生态系统调查洞察
过去七年,JetBrains 都会开展开发者生态系统调查,旨在描绘不断变化的开发者格局和使用的主要技术。 我们会与社区共享原始数据和分析报告的结果,让所有人都能了解生态系统中发生的情况。 今天,我们将分析今年的调查结果,重点关注 JavaScript 和 TypeScript。
调查概览
我们的 2023 开发者生态系统调查汇集了世界各地 26,348 名开发者的洞察。 您可以亲自查看调查结果,获取涵盖广泛主题的信息,包括编程语言、工具和技术以及实用的受众特征和有趣的事实。 我们还将分析开发者的独特生活方式,展示他们的热情和兴趣。 为了使调查尽可能公平和具有代表性,调查方法包括多个旨在清理数据和消除偏见的阶段。 您可以在此处阅读我们使用的具体调查方法。
JavaScript 洞察
JavaScript 使用趋势
在本次调查中,JavaScript 是 2023 年最常用的编程语言,连续七年保持最常用语言的地位。 这可能是因为 JavaScript 是一种低门槛语言,驱动着许多前端 Web 开发。 有趣的是,它的份额在过去三年中每年都略有下降,这可能是未来变化的预兆,因为这种下降与 TypeScript 采用率的上升同时发生。

JavaScript 用户通常开发什么?
80% 的 JavaScript 开发者主要从事网站开发。 使用 JavaScript 开发的第二常见的软件产品是实用程序(用于小型任务的小型应用)。 只有少数受访者使用 JavaScript 开发其他类型的软件。 将数据分为两个主要开发分支,86% 的 JavaScript 开发者从事前端项目,34% 也参与后端项目。

JavaScript 和 TypeScript 代码编辑器和 IDE
调查结果显示,很大一部分受访者 (51%) 使用 Visual Studio Code 进行 JavaScript 和 TypeScript 开发。 第二受欢迎的工具是 WebStorm (21%),身后是“另一个基于 IntelliJ 的 IDE”(16%),也就是 JetBrains IDE,其中包括 PyCharm、IntelliJ IDEA、GoLand 和 PhpStorm。

如果您想知道是应该使用代码编辑器还是 IDE,答案很简单:两者都可以使用,您还可以根据正在处理的任务进行切换。 对于快速编辑或较小的项目,代码编辑器可能是更好的选择,在处理大型项目或复杂任务时,IDE 往往更加可靠。
JavaScript 框架偏好设置
JavaScript 框架和库在 JavaScript 开发者社区中很流行,只有 8% 的 JavaScript 开发者表示不使用。 框架和库为开发者提供了简化构建复杂和交互式 Web 应用程序的工具和结构。 在这些框架中,最受欢迎的是 React,有 57% 的 JavaScript 开发者使用。 根据调查,第二常用的是 Vue (32%),第三位是 Next.js (27%)。 Angular 和 Express (20%) 并列第四位。

通常,预计最流行的三个前端开发框架是 React、Angular 和 Vue。 框架的选择很大程度上取决于项目的具体要求和团队偏好。
React 可能成为最常用框架的原因
- React 最初于 2013 年 5 月 29 日发布。 尽管它不是市场上的第一个框架,但它确实是第一个具有良好性能记录的大型框架。 这反过来又带来了早期的大规模采用。 它也在不断发展,让早期学习的开发者能够持续使用。
- React 与其他 UI 框架一样,遵循基于组件的架构,其中 UI 被构建为可重用组件树。 这种模块化方式使代码更易管理和维护,并提高了应用程序不同部分的代码可重用性。
- React 使用 JSX,这是 JavaScript 的语法扩展。 JSX 允许开发者在 JavaScript 中编写类似 HTML 的代码,由于大多数用户熟悉相关概念,这就提供了愉快的开发体验。
- React 相当灵活,可用于各种项目类型,从小型单页应用程序到大型复杂 Web 应用程序。 灵活性使其成为各种开发场景的良好选择。
模块捆绑器
模块捆绑器对于 JavaScript 开发者来说是很有价值的工具。 除了以确保彼此了解的方式捆绑文件和资源之外,它们还让您能够映射依赖项。 与解析器非常相似,模块捆绑器通常检查所有依赖项运作所需的文件在初始化时是否可用。 然后,它们会处理模块内的每个文件并为其构建依赖关系图。
完成后,模块捆绑器会将这些模块合并到一个文件中,文件在 output 配置形参中指定,并维护所有模块的注册表,让您可以根据需要正确调用/执行。

2023 年排在第一位的模块捆绑器是 webpack,有 57% 的 JavaScript 开发者使用。 webpack 已经存在 10 年,并且持续发展以满足开发者不断变化的需求。 不过,Vite (38%) 和 esbuild (11%) 等替代方案都得到了更广泛的采用,表示人们在寻求通过更简单的设置获得更好的性能。
单元测试
令 WebStorm 技术布道师 Jan Niklas Wortmann 沮丧的是,单元测试在 JavaScript 开发者中并不常见,32% 的受访者不编写单元测试。 在编写单元测试的受访者中,Jest 是首选单元测试框架,占 40%。 Cypress 位居第二,占 15%,Mocha、Vitest 和 Playwright 都在 10% 左右。 Jest 整体上易于使用,无需配置即可启动和运行。 这可能体现了单元测试不被采用的一部分重要原因:难上手,门槛高。

JavaScript 开发者面临的挑战
JavaScript 仍然存在挑战,但社区也在继续努力解决这些挑战。 例如,新引入的 async/await 改进了异步模型。 库和框架疲劳已经减缓,主要的库和框架现在已经成熟并互相汲取灵感。 无论您喜不喜欢,它都缺乏强类型 – 这个问题仍然有待解决,但 TypeScript 带来了一种易于实现的替代方案。
TypeScript 洞察
TypeScript 采用和增长
JavaScript 是动态类型语言,已经得到大量有效使用,但一种普遍观念是错误只能在运行时被发现。 更具类型安全性的 TypeScript 正在收获更多关注,它可以增强整体开发者体验以及开发者对其代码的信心。 TypeScript 多年来越来越多的采用,以及在使用场景方面与 JavaScript 的交叉都体现了这一点。

为什么人们会从 JavaScript 转向 TypeScript?
TypeScript 是具有静态类型的 JavaScript 超级集合,旨在与 JavaScript 项目良好配合,并且可以帮助团队逐步迁移现有项目。 TypeScript 还遵循 ECMAScript 标准,通常支持最新的 JavaScript 功能。 这意味着开发者甚至可以在浏览器广泛支持未来 JavaScript 规范的功能之前就使用这些功能。 TypeScript 当前的稳定版本是 5.3.2,TypeScript 5.4 预计将于 2024 年 3 月推出。
结论
JavaScript 和 TypeScript 生态系统不断发展。 现在与 2016 年完全不同,技术、框架、语言和库现在已经开始成熟,开发者偏好中出现了共性和趋势。 WebStorm 这样的工具将继续发展和改进,帮助开发者充分利用代码并有效使用 JavaScript 和 TypeScript。 我们希望新的创新技术会得到持续开发,帮助我们解决生态系统的问题和局限。 秉承这一目标,我们将不断更新产品,满足生态系统和包括我们自己在内的开发者的需求。
本博文英文原作者: