最近、ニュースや新聞でも「プログラミング」という言葉を目にする機会が増えてきたように思います。今までプログラミングに対して興味を持っていなかった人も、スマホやアプリが身近になったことで「自分でアプリ開発したい」「Web サイトを作りたい」と思う人が増えてきました。 また世間ではプログラマー不足といわれ、職業としても日に日にプログラマーの存在が増してきています。
そんな注目を集めるプログラミングですが、その言語は現在 705 種類あり(Wikipedia)、プログラミング入門者にとってどの言語を学べばいいのか不安に思う方も少なくありません。 そこで今回はそんな不安を払拭し、一人でも多くの方が納得してプログラミング学習を始められればいいなと思い、情報をまとめてみました。
これからの時代はプログラミングって聞くけど、どの言語がいいの?
まず最初に各調査機関が公表している人気のプログラミング言語をチェックしてみたいと思います。
各調査機関のプログラミング言語ランキング
現在の開発現場や研究機関によるプログラミング言語のシェアやランキングは以下の通りになります。最先端の開発現場や市場で使われているプログラミング言語を知っておくと、どのプログラミング言語にニーズが集まっているか参考にすることができます。
|
IEEE |
TIOBE |
Devpost |
GitHub |
RedMonk |
1位 |
Java |
Java |
HTML/CSS |
JavaScript |
JavaScript |
2位 |
C |
C |
JavaScript |
Java |
Java |
3位 |
C++ |
C++ |
Python |
Ruby |
PHP |
4位 |
Python |
C# |
Java |
PHP |
Python |
5位 |
C# |
Python |
C / C++ |
Python |
C# |
6位 |
R |
Objective-C |
PHP |
CSS |
C++ |
7位 |
PHP |
PHP |
Objective-C |
C++ |
Ruby |
8位 |
JavaScript |
Visual Basic .NET |
C# |
C# |
CSS |
9位 |
Ruby |
JavaScript |
Swift |
C |
C |
10位 |
Matlab |
Perl |
JSON |
HTML |
Objective-C |
■表内補足■
- IEEE/アメリカの電気工学技術学会誌によるランキング。(2015)
- TIOBE/ Google や Yahoo!、Baidu、MSN などの検索エンジンにも活用されているプログラミング言語の指標 TIOBE Index。(Sep.2015)
- Devpost(Student Hacker Report)/ソフトウェア開発者が集うコミュニティーサイト Devpost(ユーザー40万以上)内で使われているプログラミング言語の割合。(2014-2015)
- GitHub/GitHub 内で使用されているプログラミング言語の割合。(2015)
- RedMonk/GitHub と Stack Overflow に由来したプログラミング言語のランキング。(June.2015)
また時代と共にプログラミング言語のランキングも移り変わっています。以下に GitHub と TIOBE の統計データ推移を掲載します。
■ GitHub ■
■ TIOBE ■
各調査機関のランキングと年代別プログラミング言語のシェアからみても、Java が安定的に人気のあるプログラミング言語であることが分かります。当面このトレンドは続くと予想され、世界的に注目されているプログラミング言語になります。
プログラミング言語と仕事量の関係
プログラミング言語の種類と求人数の関係はまとめにくいですが、フリーランス市場においては一定の関係を確認することができます。以下に世界的フリーランス市場の Upwork と国内を代表するランサーズとクラウドワークス内で、どれぐらい仕事数があるか各プログラミング言語毎にまとめてみました。(2015.9.19 時点)
|
Upwork |
ランサーズ |
クラウドワークス |
Java |
1388 |
54 |
59 |
JavaScript |
3174 |
38 |
75 |
Ruby |
468 |
16 |
45 |
PHP |
4380 |
60 |
92 |
Python |
556 |
6 |
39 |
HTML |
4772 |
148 |
194 |
CSS |
3126 |
51 |
86 |
Swift |
233 |
6 |
4 |
Objective-C |
387 |
8 |
12 |
この表からは、上記でまとめた各調査機関によるプログラミング言語のランキングとは異なる傾向にあることが分かります。仕事については、Java よりもHTML や PHP、JavaScript、CSS といった Web 開発の基礎言語にニーズがあることが分かります。
人気プログラミング言語の特徴
- Java/Web や Android のアプリ開発など幅広い分野で利用。コンパイル後、Windows や Mac、UNIX など環境を問わず実行可能。
- C/実行速度最速の異名をもつプログラミング言語。Windows や Linux などの OS にも 使われている言語。
- C++/C 言語にオブジェクト指向等多彩な機能が追加されたプログラミング言語。
- C#/Java と C++ のいいとこどりの様な言語。
- Objective-C/iPhone アプリの制作に必要だった言語。現在は Swift がメインロード。
- Python/Ruby や Perl に比べると読みやすい言語として人気。DropBox や YouTube などのシステム開発に利用。
- PHP/Web アプリケーション開発に必要な言語。WordPress に使われていることで有名。
- Ruby/日本人が開発したプログラミング言語。コンパイル必要なく、すぐにプログラム実行できる特徴。クラウドワークス社や島根県庁など国内多くのシステムで活用(Ruby 事例集)。
- Swift/アップル社が開発した iOS 用のプログラミング言語で、早い・安全・モダン・シンプルな特徴。
- HTML/Web、アプリ共に何かと必要なマークアップ言語(正式にはプログラミング言語には属さない)。
- CSS/文字の大きさやなど、コンテンツのスタイルを決めるマークアップ言語(正式にはプログラミング言語には属さない)。
- Go/Google 社が開発しているプログラミング言語。シンプルな構文で、クロス・コンパイルができ、巨大プロジェクト向きとされる。利用者急上昇中の要注意プログラミング言語。
いかがでしたでしょうか?実際に一からプログラミングを学習しようと思って、まずはランキングの高い Java から学習を始めても、ハイ・ストレスな時間が待っていると思います。
プログラミングの義務教育を導入しているイギリスのカリキュラム(pdf 6MB)を参考にしてみると、まずはゲーム等を通じてプログラミング的思考(アルゴリズム)を学び、そのあと Scratch などでプログラミングの感覚に慣れ、コーディングするという過程が採られています。
興味のある方はまずゲーム感覚でプログラミングを体験してみてはいかがでしょうか?
こちらの後によく読まれています!