検索
ニュース
どのJavaScript技術が有望?:

利用者調査「State of JavaScript」最新版が公開、2万人強が参加

JavaScriptの利用動向に関する年次調査(2019年版)が発表された。開発者2万1717人の回答を集計、分析したものだ。勢いのあるフレームワークやツール、JavaScriptのスーパーセット言語が分かる。

Share
Tweet
LINE
Hatena

 JavaScriptの利用動向に関する年次調査「State of JavaScript Survey」(2019年版)が発表された。JavaScriptを開発に利用する2万1717人の回答を集計、分析したものだ。全世界の100以上の国から回答を得た。回答が多かった上位5カ国は米国(23.7%)、英国(6.4%)、フランス(5.5%)、ドイツ(5.1%)、カナダ(4.0%)。日本からも118人が回答した。

 開発者の属性は4種類に分かれている。フルスタック(48.3%)、フロントエンド(36.6%)、Web(11.7%)、バックエンド(3.4%)だ。

勢いのあるフレームワークやツールは?

 調査結果のハイライトは次の通り。レポートでは、2019年のJavaScriptエコシステムの全体像をさまざまな角度から示している。


JavaScript技術ごとの利用者数と学習者数の推移(出典:State of JavaScript Survey

 図中の個々の線は、JavaScriptのフレームワークやツール、拡張について、利用者の傾向が2016〜2019年の期間中、どのように推移したのかを示している(色の濃い側が2019年)。

 縦軸は上に行くほど、利用者が多いことを示し、横軸は右に行くほど、学習希望者(再度利用しようとする開発者を含む)が多いことを表す。

 ReactやExpress、Jest、TypeScriptなどは、現在の利用者が多く、今後使おうと考えている利用も少なくない。GraphQLやVue.jsも成長が著しい。逆にAngularの利用者は増え続けているものの、勢いを失いつつあることが分かる。

 フレームワークやツール、拡張などを、JavaScriptのスーパーセット言語(青紫色)、フロントエンド(シアン)、データレイヤー(朱色)、バックエンド(赤紫色)、テスト(オレンジ)、モバイルとデスクトップ技術(緑色)の5つに分けてみると、それぞれの傾向がよりはっきりする。

 JavaScriptのスーパーセット言語ではTypeScriptが一人勝ち状態だった。

 フロントエンドではReact、次いでVue.jsだった。データレイヤーではReduxが落ち込み傾向にあり、GraphQLが追いかけている形だ。テストではJest、次いでMochaとなった。モバイル/デスクトップでは利用者がいずれも少ないものの、ElectronとReact Nativeの将来が有望だと分かった。

個別技術に対する利用者の評価は?

 次の図は、各技術について2019年時点の満足度と利用者数を示している。縦軸は満足度(0〜100%)、横軸は利用者数(0〜1万8000人)を示す。


JavaScript技術に対する満足度と利用者数(出典:State of JavaScript Survey

 図では各技術を4つの象限で分類した。第1象限(右上)のADOPT(採用)は、利用者数が多く、満足度も高い安心して採用できる技術だ。ExpressやReact、Jest、TypeScript、Mocha、Reduxの6つの技術を含む。

 第2象限(左上)のASSESS(評価)は、利用者数は少ないが満足度が高く、目を配っていく価値のある26の技術を含む。

 第3象限(左下)のAVOID(回避)は、利用者数が少なく、満足度も低い。つまり、今のところは避けることが無難だと考えられる技術だ。6つの技術が含まれている。

 第4象限(右下)のANALYZE(分析)は、利用者数が多いものの、満足度が低い。現在使っている場合は、再評価すべき技術だ。Angularのみがここに含まれる。

常に新しい機能が加わっていくJavaScript

 言語として見たJavaScriptの最もエキサイティングな点の一つは、停滞がないことだ。アロー関数式から分割代入まで、多くの重要な機能がここ数年、加わっており、今ではJavaScriptコードに不可欠な要素となっている。

 そこでState of JavaScript Surveyでは今回、どのツールを使っているかだけでなく、JavaScriptコードをどのように記述しているかも明らかにするため、開発者が使っている、または知っているパターンや構造、機能についても調査を始めた。

 次の図は、JavaScript関連の機能を5つのカテゴリー別に分類し、それぞれの普及率を示している。


JavaScript技術について知っている開発者の数と実際に使っている開発者数(出典:State of JavaScript Survey

 外側の円は、その機能グループについて知っている総利用者数を示す。内側の二重の円は、特定の機能について知っている利用者数(外側)と実際に使っている利用者数(内側)を示す。

 例えばDestructuring(分割代入)については1万9627人が知っており、1万7864人に利用経験がある(使用率91%)。

 5つの機能グループではWebブラウザAPIに関する機能が最も多かった。だが、個別の機能を見ていくと、Web Speech APIやWebRTC、WebGLなど、利用率が2割を下回る技術も多い。

 逆にシンタックスに分類された機能は3つしかなかったが、ここに含まれる機能の利用率はどれも9割を超えていた。

TypeScriptなどのスーパーセット言語の傾向は?

 コンパイルするとJavaScriptコードを出力するスーパーセット言語が、広く利用されている。生のJavaScriptと比較して、コーディングしやすかったり、バグを作り込みにくかったりするためだ。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る