こちらのサイトではDRUPAL10に関連する記事を掲載しています。
概要
アメリカの産業調査会社RedMonkが半年ごとにプログラミング言語の人気ランキングとその動向と調査して発表しています。2015年下半期から2017年上半期までのランキングを比較してプログラム言語の人気の移り変わりを調べてみました。
ランキングの推移
アメリカの産業調査会社RedMonkは、RedMonkはStack Overflowのディスカッション数やGitHubで使用されている言語を分析して、独自の評価方法によりランキングを作成しています。下表に、RedMonkが発表した2015年下半期から2017年上半期までのトップ20をまとめました。
2015年7月 | 2016年1月 | 2016年7月 | 2017年1月 | ||||||||
JavaScript | 1 | – | JavaScript | 1 | → | JavaScript | 1 | → | 人気JavaScript | 1 | → |
Java | 2 | – | Java | 2 | → | Java | 2 | → | 人気Java | 2 | → |
PHP | 3 | – | PHP | 3 | → | PHP | 3 | → | 人気Python | 3 | ↑ |
Python | 4 | – | Python | 4 | → | Python | 4 | → | PHP | 4 | ↓ |
C# | 5 | – | C# | 5 | → | C# | 5 | → | C# | 5 | → |
C++ | 5 | – | C++ | 5 | → | C++ | 5 | → | C++ | 5 | → |
Ruby | 5 | – | Ruby | 5 | → | Ruby | 5 | → | CSS | 7 | ↑ |
CSS | 8 | – | CSS | 8 | → | CSS | 8 | → | Ruby | 7 | ↓ |
C | 9 | – | C | 9 | → | C | 9 | → | C | 9 | → |
Objective-C | 10 | – | Objective-C | 10 | → | Objective-C | 10 | → | Objective-C | 10 | → |
Perl | 11 | – | Shell | 11 | ↑ | Shell | 11 | → | Scala | 11 | ↑ |
Shell | 11 | – | Perl | 12 | ↓ | R | 12 | ↑ | Shell | 11 | ↓ |
R | 13 | – | R | 13 | → | Perl | 13 | ↓ | Swift | 11 | ↑ |
Scala | 14 | – | Scala | 14 | → | Scala | 14 | → | R | 14 | ↓ |
Haskell | 15 | – | Go | 15 | ↑ | Go | 15 | → | Go | 15 | → |
Matlab | 16 | – | Haskell | 15 | ↓ | Haskell | 16 | → | Perl | 15 | ↓ |
Go | 17 | – | Swift | 17 | 初 | Swift | 17 | → | NEWTypeScript | 17 | 初 |
Visual Basic | 17 | – | Matlab | 18 | ↓ | Matlab | 18 | → | NEWPowerShell | 18 | 初 |
Clojure | 19 | – | Clojure | 19 | → | Visual Basic | 19 | ↑ | Haskell | 19 | ↓ |
Groovy | 19 | – | Groovy | 19 | → | Clojure | 20 | ↓ | Clojure | 20 | → |
Visual Basic | 19 | ↓ | Groovy | 20 | ↓ | NEWCoffeeScript | 20 | 初 | |||
NEWLua | 20 | 初 | |||||||||
Matlab | 20 | ↓ |
表だけではイメージしにくいので、折れ線グラフでプロットしてみました。
縦軸はランキング1位~20位、横軸にランキング発表時期です。
RedMonkのアナリストおよび共同創設者のスティーブン・オグレディも述べていますが、トップ10にはほとんど動きが見られません。特に、JavascriptとJavaは2015年下半期から1位と2位をキープしており不動の強さを示しています。
Javascriptはもともとネットスケープ社のブラウザでインターネットの端末用スクリプト言語として開発された言語です。しかし、マイクロソフトがJavaScriptの非同期通信を利用したAjaxという技術を開発したことにより、高機能なウェブアプリケーション開発言語の一つとして再び注目もあつめるようになりました。2017年にはJavascriptを利用したフレームワークTypeScriptやCofeeScriptがこのTop20にランクインしており、Javascriptはますます高くなりそうです。
ちなみに、Javascriptはこの調査がはじめて行われた2012年からずっと1位をキープしています。
JAVAはその適用範囲が広く、WEBプログラミング言語から組込み系の開発言語としても使用されており、上位にランキングされているのも頷けます。2、3年ほど前から聞かれるようになったIoT(Internet of Things)の開発言語としてもJavaは浸透しておりますし、スマホやタブレット(Android端末)の開発にもJavaは欠くことができない言語となっています。
機械学習やディープラーニングで使える言語として日本でも最近急に耳にするようになったのがPYTHONです。海外では開発言語として人気があり、GOOGLEやFACEBOOKでは開発言語として使用されています。GOOGLEは独自に最適化を施したPython、Unladen Swallowを使用しています。
PHPとは、PHPマニュアルによると次のように書かれています。
Rubyは前期からランクを一つ下げましたが、依然人気のある言語です。Rubyはここでは唯一日本人により開発された言語です。PerlやPythonをもとによりProgrammingを楽しめる言語として開発したのがRubyといわれており、公式リファレンス用語集にも「Matz(まつもと) が Python に満足していれば Ruby は生まれなかったであろう」と記載されています。Rubyの設計思想が「プログラミングを楽しむこと」にあるように、Rubyはストレスなくプログラムを記述でき、フレームワーク「Ruby on rails」がより記述コードをすくなくすることを可能にしています。
Top10内のその他の言語C#,C++,C,Objective-cは際立った特徴はありませんが生産性が高く開発効率がよく仕事をこなすのにとても有効な開発言語です。CSSはスタイルシートでありプログラム言語とはいえませんが・・
その他、今期からTop20に入ってきたものとして、TypeScript、PowerShell、CoffeeScriptそしてLunaが存在します。Lunaは手続型言語でPowerShellはコマンドラインで実行するためのスクリプト言語(SHELLの拡張版)です。しかし、TypeScriptとCofeeScriptはJavascriptを生成するためのツールで、プログラム言語とは言い難いですが、Javascript用のコンパイラとして機能します。クライアントサイドだけでなくサーバーサイドのプログラムも担うことができるようになり、Javascript用のフレームワーク(AnglarJS、React.jsなど)のJavascriptコードを記述するためのコンパイラ言語として使用されているようです。Javascriptの用途がますます広がると、可読性の低いJavascriptを補うために、このようなJavascript用のコンパイラも必要になってくると思われます。
参考までに、RedMonkが2017年上半期のランキングを決定するためにStack Overflowのディスカッション数やGitHubで使用されている言語を分析して作成した資料を引用しておきます。
※上のグラフで斜線から遠く離れているもの(Visual Basic、Common Lispなど)は、GitHub/StackOverflowで順位に大きな差のあるものを示しています。
参考
- 10 Best Programming Languages That You Need To Learn In 201710 Best Programming Languages That You Need To Learn In 2017The year 2017 has arrived. So, are you ready to learn a new programming language and boost your skill set? If your answer is yes, you're at the right place
- The RedMonk Programming Language Rankings: January 2017
http://redmonk.com/sogrady/2017/03/17/language-rankings-1-17/
この記事またはDrupalに関するご質問がございましたら、お気軽にお問い合わせください。