プログラミング

プログラミング言語一覧とそれぞれに出来ること、習得人気順を紹介

プログラミング教育が小学生の必修科目に設定されたのも久しいお話です。

実際、プログラミングができる人(=プログラマー)になれば、将来ご飯に困ることはないと言われています。

確かに日本はプログラマーが足りていませんので、勉強するプログラミング言語を間違えなければ、そしてちゃんと勉強すれば、仕事は選び放題です。

しかしながら、グローバルな視点で見ますと、これからの20年でIT関連企業の在り方は大きく変わります。

人によっては、20年後もプログラミングで生きていくことは難しいと考えられています。

ではどういった人が安定して稼ぐことができるんでしょうか?

これからは、
「技術でご飯を食べていく」「会社に依存せず自ら稼ぐ力を身に付ける」こういった覚悟を持っている人だけが、満足いく収入を得ることができる時代になっていきます。

さて、プログラマー業界の将来はまた別の記事で書くとして、

この記事をご覧になっている方は、

温度の差はあれど、自分もしくは身近なだれかが「新たにプログラミング言語を学び始めたいと考えている方」だと思います。

転職するにしろ、副業するにしろ、プログラミングのスキルは今後絶対に役に立ちます。

とはいえ、まずは、

  • プログラミング言語で出来ること
  • どんなプログラミング言語があるのか
  • それぞれのプログラミング言語の特徴や比較

この3点に絞って解説していきますので、自分が「これから覚えるべきプログラミング言語」を見つけていきましょう。

これから学ぶことを前提に考えたら、おすすめは「Python(パイソン)」一択ですけど、せっかくなのでいろいろ比較して見ますね。

プログラミング言語一覧と、それぞれに出来ること

プログラミング言語の一覧と読み方

一覧とは言いましたが、現在、プログラミング言語は200種類以上存在していると言われています。

中には特定の環境でのみ使われているものや、昔は流行っていたけど今では使われなくなったものなどもあり、現在主流のものは20種類もないかもしれません。

正直、200種類全てを紹介することは出来ませんし、されても迷惑でしょうから、プログラマーに人気の言語20種類に絞って紹介していきます。

プログラミング言語読み方開発年
Pythonパイソン1990年
Javaジャバ1995年
JavaScriptジャバスクリプト1995年
C#シーシャープ2000年
C言語シーゲンゴ1972年
C++シープラプラ1983年
PHPピーエイチピー1995年
R言語アールゲンゴ1993年
Objective-Cオブジェクティブ シー1983年
TypeScriptタイプスクリプト2014年
Kotlinコトリン2011年
Swiftスウィフト2014年
Matlabマトラボ1977年
Goゴー2009年
VBAブイビーエー1993年
Rubyルビー1995年
Rustラスト2010年
Adaエイダ1979年
Visual Basicヴィジュアル ベーシック1991年
Scalaスカラ2003年
Abapアバップ不明

出来ることからプログラミング言語を見てみる

プログラミングは、気づいていなくても身近にたくさんあります。

スマホ、家電製品、インターネット、YouTube、SNS、Amazon、駅の改札、自動車などなど挙げ始めればキリがありません。

まずは、出来ることからプログラミング言語を逆引きしてみましょう。

出来ること作れるものプログラミング言語
Web開発、Webページの動作、SNS開発ホームページ、YouTube、InstagramRuby、JavaScript、Python
ECサイト、ブログ開発Amazon、楽天市場Python、PHP
スマホのソフトウェア開発Android OS、iOSJava、Kotlin、Swift
スマホのアプリ開発ご存じのアプリ全部Java、Kotlin、C#、Swift、Objective-C
ゲーム開発ご存じのゲーム全部C++、C#、JavaScript
家電、車などのシステム開発IoT家電、カーナビPython、C、C++、C#、Java
AI (人工知能)の開発PepperPython、R、C++、Julia
Wi-Fiルーターなどの開発無線ルーター、モデムC、C++、Java
信号機やインフラ関連開発信号、電車、発電所のシステムC、C++、C#、Java、アセンブラ

ホームページを作る場合

プログラミング言語ではありませんが、「HTML」と「CSS」という言語も必要になります。

「HTML」と「CSS」でホームページの見た目を作り、「JavaScript」で動きを作ることで、一般的なホームページは作れます。

そのうえで「PHP」を組み合わせることによって、より洗練されたWebサイトを作れるようになります。

スマホアプリを作る場合

iOS向けのアプリを開発したい場合は、「Swift」か「Objective-C」になります。

以前は「Objective-C」が主流の言語でしたが、2014年に「Swift」が発表されてからは、「Swift」が主流となっています。Android向けのアプリを開発したい場合は、「Java」か「kotlin」「C言語」がよく使われる言語です。

「C言語」は、CPUやメモリを気にしながら記述を行わなければなりませんので、初心者にはおすすめし難い言語ですが、処理速度が他の言語よりもかなり速いです。

Android向けのアプリには、基本は「Java」が使われていますが、画像処理などが多い場合「C言語」が使われる場合もあります。

ゲームを作る場合

ゲーム開発会社では、多くの会社で「Unity」という開発環境(ゲームエンジン)が利用されています。

そもそもゲームエンジンとは、ゲーム内で頻繁に利用される処理(描画処理、物理演算、サウンド入出力など)をあらかじめ組み込んだソフトウェアのことで、共通の処理を、自分自身で作成せずにゲームエンジンに任せることで開発工程が効率化される仕組みになっています。

そのため、Unityに使われる「C#」や「JavaScript」といった言語がよく使われています。

AI(人工知能)を作る場合

これから向こう10年は、間違いなくAIの時代です。

その「AI」や「機械学習」といった分野に用いられるディープラーニング(深層学習)において、今一番必要とされている言語が「Python」です。

そして、「Python」にはニーズがあり、機械学習に特化したさまざまなライブラリが用意されています。

例えば、「~という機械学習のアルゴリズムが使いたい」と思ったときに、「Python」ならそのほとんどがライブラリとして公開されているので、初心者でも扱いやすい言語と言えるでしょう。

私がおすすめする理由の一つですね。

AIの開発は「Python」が主流ですが、以外にも「R」「C++」「Julia」といった言語も使われています。

※「Python」は他にも、Webサイトやツール作成にも応用することができ、YouTube、Instagramなども「Python」を使って作られています。

プログラミング言語の人気順

人気順位の出し方は、「PYPL Index」

PYPLはGoogleの検索エンジンを使って「プログラミング言語のチュートリアル」が検索された回数から、対象となるプログラミング言語がどれだけ話題になっているかを比べたものです。

チュートリアルの検索回数が多ければ多いほど、人気度が高いと位置づけてランキングしているわけです。

実際これは間違った考え方ではなく、プログラミングの学び方というのは、基礎をインプットしたら後はアウトプットです。

これは現役バリバリのプログラマーも同じです。

そして、そのアウトプットを行う際には、チュートリアルを検索し、実際にチュートリアルを見ながら作っていくんです。

ですので、チュートリアルの検索回数が、プログラム言語の利用者数というのも暴論ではないわけですね。ということで実際にランキングを見てみましょう。

2021年10月時点の人気プログラミング言語(上位20)

順位プログラミング言語インデックス値3年間での変化(2018年4月比べ)
1Python29.66 %1up
2Java17.18 %1down
3JavaScript8.81 %1up
4C#7.3 %1up
5C/C++6.48 %1up
6PHP5.92 %3down
7R4.09 %=
8Objective-C2.24 %=
9TypeScript1.91 %3up
10Kotlin1.9 %6up
11Swift1.86 %2down
12Matlab1.58 %2down
13Go1.49 %5up
14VBA1.33 %1down
15Ruby1.09 %4down
16Rust1.08 %4up
17Ada0.92 %4up
18Visual Basic0.75 %4down
19Scala0.73 %4down
20Abap0.63 %3up

今もっとも伸びているプログラミング言語は「Python」です。

ここ5年くらいずっと右肩上がりで、ついに「Java」を超えましたね。

3年前は、「Java」も「Python」もインデックス値が20%前後で、「Java」の方がわずかに人気がありましたが、今はぶっちぎりで「Python」が人気だと分かります。

「Java」に関しては2位に落ちた、という事実だけでなく、長期的にみて下降傾向があり、2008年の上旬をピークに徐々に減少が続いているということにも気を付ける必要があります。

非常に汎用性の高い言語である「Java」は、世界的にも圧倒的に人気がありましたが、今現在では「Java離れ」が進み、今後もこの流れは続いていくでしょう。

他に順位の移動が大きいプログラミング言語もありますが、原因の多くは「Python」への流入が考えられます。

つまり、順位が上がったのではなく、上位にあったプログラミング言語を使用しているプログラマーが「Python」へ流れ、落ちてきただけということです。

これから学ぶ言語は将来性も考慮する必要がありますが、「Python」と「Go」、「Kotlin」、おまけして「Matlab」辺りが成長株と言えるでしょうか。

プログラミング言語の特徴を解説

それぞれの詳密な解説はそれぞれ別の記事を設けますので、ここでは習熟難易度と筆者のおすすめ順位を紹介したいと思います。

プログラミング言語習熟難度(★1~★5)初心者の方への習得オススメ順位初心者の方は止めた方がいい順位
Python★★☆☆☆1位
Java★★★★☆5位
JavaScript★☆☆☆☆
C#★★☆☆☆3位
C/C++★★★★★4位
PHP★★☆☆☆
R★★★★☆2位
Objective-C★★★☆☆3位
TypeScript★★☆☆☆
Kotlin★★★☆☆
Swift★★☆☆☆5位
Matlab★★★★☆1位
Go★★★☆☆2位
VBA★☆☆☆☆
Ruby★☆☆☆☆4位

習熟難易度とは

環境構築の難易度

一般的に環境構築と呼ばれる作業を含みます。

プログラミング言語を書いて動作させる前に、その前段階として必要なものをインストールする作業や、インストール後の各種設定作業などがあり、この環境構築で断念するレベルに難しいプログラミング言語もあります。

本当に使わせる気があるのかと、疑問しかないですね笑

プログラム検索の難易度

プログラムは、調べながら記述します。「~という処理をさせたい」と考えた時、それを調べ、ライブラリからそのプログラム(似たもの)を見つけ、記述していく作業がとても多いです。

逆に言いますと、調べることが難しければ、その分記述に時間がかかりますし、そのそも記述できないかもしれないんです。

この調べやすさは本当に重要で、

例えば、「英語説明しかない」「チュートリアルが少ない」「エラー時の解決法が少ない」などの言語を選んでしまうと、本当に大変です。

予備知識の難易度

プログラミングはこれから覚えるにしろ、プログラミングの利用用途などを考えると、事前に知っておかなければならない知識などもあります。

例えば、統計学や数学的関数など、前提となる知識がないと、解説を見ても意味が分からないことになります。

その点からも、予備知識が不要な言語の方が難易度が低いのは当然ですね。

「初心者の方は止めた方がいい順位」の上位は、予備知識が専門的で、一般的なプログラマーは使わない言語です。

正直、予備知識の勉強だけで学校から通いなおした方がいいレベルなので、予備知識が必要なプログラム言語はおすすめしません。

初心者におすすめの順位

順位プログラミング言語おすすめ理由
1Pythonこれからは「AI」の時代。「AI」なら「Python」。言語としての汎用性も高く、様々な分野で活躍できる。
2Go記述がとても簡単で初心者向き。Googleが推奨しているため、大手企業が導入し始めている。
3C#類似性が非常に高く、「C#」を覚えれば他の言語へ派生できる。仕組みを理解できれば、記述は簡単。
4Ruby汎用性が非常に高く、「Ruby」を覚えれば色んな仕事で活躍できる。日本語の情報サイトや書籍が多い。
5SwiftiOS専用なので、世界中で人気なiPhoneシリーズが無くならない限りずっと現役の言語。

初心者は止めた方がいい順位

順位プログラミング言語おすすめ理由
1Matlab初期費用がとっても高い。主にデータ統計や計算などに使われるため、行列や数学的関数の予備知識が必要。
2R専門性が高く、統計解析に特化しているため、利用するには統計学の基礎的な知識が必要。
3Objective-C2014年に作られた「Swift」の方が簡単で、処理が軽い。「Objective-C」の方が参考資料は多いがすぐ抜かれる。
4C/C++初心者にはとても難しい言語。独学で習熟するのはほとんど無理だと思って構いません笑
5Java環境構築が面倒。専門性が高く、記述も長いため、もはや肉体労働。

まとめ

ということで、

  • プログラミング言語で出来ること
  • どんなプログラミング言語があるのか
  • それぞれのプログラミング言語の特徴や比較

上記3点について、筆者の個人的な感想も交えつつ紹介してきました。

色々な言語がありますが、主流な言語をまとめてみますとそこまで多くありません。

プログラミング言語の特徴をしっかりと知っていれば、

「ご自身がやりたいこと=何を作りたいか」に合わせて、選ぶべき言語は2~3個くらいからの選択でしかありません。

一応もう一度おすすめしますが、今から勉強を始めるなら「Python(パイソン)」です。

これからの時代が「AI」だから、ということもありますが、「Python(パイソン)」は汎用性も高いので、様々な分野で活躍できる言語です。

是非参考にしてくださいね。

\ITエンジニアのプロと話せる/

未経験者専門Pythonスクールを見てみる

今なら気軽に参加できるオンライン説明会を実施中

-プログラミング

© 2021 d-blog