プログラミング言語のランキングを公開しているのは、TIOBE だけではない。様々なサイトで、人気ランキングが公開されているので見ていこう。
まずは、
GitHub だ。GitHub は、ソースコードをホスティングするサイトで、ソフトウェア開発のプラットフォームでもある。最近、Microsoft が買収したことで、開発者以外の人のあいだでも注目を集めた。
GitHubの年次レポート
The State of the Octoverse を見てみよう。
Octoverse という言葉は見慣れないものだが、おそらく同社のキャラクターである Octocat から取ったものだと思われる。ちなみに、Octocat は、種族の名前だそうだ(
ねとらぼ)。
【Top languages】
1位 JavaScript
2位 Python
3位 Java
4位 PHP
5位 C#
6位 C++
7位 TypeScript
8位 Shell
9位 C
10位 Ruby
次に、
Stack Overflow の情報を見てみよう。Stack Overflow は、コンピュータや情報技術のQ&Aサイトだ。プログラムを書いていて、分からないことがあり検索すると、高率でこのサイトにたどり着く。
同サイトの
Stack Overflow Developer Survey 2019 に、プログラミング言語についての調査結果が記載されている。
【Most Popular Technologies】
1位 JavaScript
2位 HTML/CSS
3位 SQL
4位 Python
5位 Java
6位 Bash/Shell/PowerShell
7位 C#
8位 PHP
9位 C++
10位 TypeScript
こちらは、プログラミング言語だけではなく、その他のものも含まれているため、GitHub とは少し違う。それらの項目を除くと、GitHub とよく似ている。両者ともに、実感にかなり近い。
IEEE(Institute of Electrical and Electronics Engineers、米国電気電子学会)も
The Top Programming Languages 2019 を発表している。こちらも見てみよう。
【The Top Programming Languages 2019】
1位 Python
2位 Java
3位 C
4位 C++
5位 R
6位 JavaScript
7位 C#
8位 Matlab
9位 Swift
10位 Go
RedMonk も見てみよう。こちらは、アメリカの業界アナリスト企業だ。
The RedMonk Programming Language Rankings: January 2020の結果は、以下のようになっている(9位は同率になっている)。
【The RedMonk Programming Language Rankings】
1位 JavaScript
2位 Python
3位 Java
4位 PHP
5位 C#
6位 C++
7位 Ruby
8位 CSS
9位 TypeScript
9位 C
これら各種の結果から分かることは、
Java、Python、JavaScript、C、C++、C# が特に強いということだ。
Java は汎用的に使われる言語で、多くの場所で動く。サーバーからモバイルまで動作して、デスクトップアプリケーションも作成できる。開発者の数も多い。堅牢なプログラムを書くことができて、多くのリソースを活用できる。
Python は、近年 AI 需要で特に伸びている言語だ。初学者にも学びやすい平易な言語で、教育および学術分野で元々広く利用されていた。まだまだ伸びている言語なので、利用者は今後も増えるだろう。
JavaScript は、Webページ上で動作する言語だ。全てのアプリケーションが、Webに乗る勢いになっている昨今では、まだまだ需要が増えることが予測できる。最近は、node.js というサーバー向け実行環境や、Electron といった、デスクトップアプリケーション開発環境も整備されて、利用範囲が拡大している。
Java と
JavaScript は、名前は似ているが、中身はまるで違う別の言語だ。プログラムを書く人の中にも、この違いを知らずに混同している人がたまにいるので、間違えないように注意した方がよい。
C や
C++ は、限られたマシン性能で、高速に動作するプログラムを書く際に採用されやすい。組み込み分野やゲーム開発など、低リソースで高速に動作させたい時は重宝される。私も最近、C++ で Nintendo Switch 向けのゲームを作った。
C#は、近年様々な分野で利用されている、比較的新しいプログラミング言語だ。ゲーム開発プラットフォームである Unity でも C# が採用されている。今後出てくる新しい分野では、Java ではなく、C# が利用されることが多そうだなという実感がある。
最後に、各言語の登場時期をまとめておく。だいたい10年ずつぐらいの世代差がある。
1972年 C
1983年 C++
1991年 Python
1995年 Java、JavaScript
2002年 C#
今人気の言語は、20~30年前に登場したものが多い。多くの開発者が育ち、開発に便利な多様な資産が蓄積されるまでには、10年ぐらいは掛かる。新しいプログラミング言語も、各種登場しているが、急激には入れ替わらないだろうと予測できる。
プログラミング言語の選択は、就職と年収に直結しやすい。そのため、いつの時代もプログラマーの関心の対象だ。たまにはこうしたランキングを見て、自分の持っているスキルの市場価値を見直して、次の一手を決めたいところである。
<文/柳井政和>