初心者がはじめたいプログラミング言語ランキングベスト5【2020年】
初心者がはじめるプログラミング言語を選ぶときに考えたい基準
初心者がはじめるプログラミング言語を選ぶときに考えたい基準は3つです。
- 将来性があるプログラミング言語を選ぶ
- 求人があるor希少性の高いプログラミング言語を選ぶ
- 特別なプログラミング言語は選ばない方がよい
【前提1】作りたいものを作るにふさわしい言語を選択すれば問題なし
これから上記の基準についてお話ししますが、その大前提として、プログラミング言語にはそれぞれ得意分野と不得意分野があります。
そのため、今のあなたに「作りたいものがある!」というときは、迷わずそれを作るにふさわしい言語を選択しましょう。
後述する将来性も収入も、「これを作りたい」というモチベーションの前には小さな要素です。明確な目標に向かって取り組む勉強は、資格やキャリアのための勉強とは比べものにならない勉強効率を発揮します。
「そんな勉強じゃ知識が偏って他のことができなくなる」と思うかもしれませんが大丈夫。作りたいものを作りましょう。
「偏った知識でも、自力でプログラムを一定の形にまでこぎつけた経験を持っている人」と「同じだけの時間をかけて満遍なくプログラミングについて勉強した人」との間では、ただ勉強しただけでは身につかない経験値に天と地の差が生まれます。
【前提2】習得の難易度は考えなくてもいい
「習得の難易度」という基準もよく語られがちですが、ここではあえて触れません。その理由は「近年の有名どころのプログラミング言語に、超高難度な言語はない」と考えているからです。
もちろん実行環境を整える大変さや、コーディング量の多い少ないといったファクターは確かに存在します。しかし、環境整備の大変さやコーディング量の違いでスキルや収入、就職の選択肢などが増えるなら、その違いは大きな問題ではないと思いませんか?
また、プログラミング言語を扱うスキルそれ自体は、半年から数年も触っていれば個々の能力で大差は付きません。
ここでFree Code Camp講師Quincy Larsonの、お気に入りの言い回しを紹介します。
「プログラミングは簡単です!
『プログラミングを難しくする何か』が難しいのです!」
だから安心して、これから紹介する基準でプログラミング言語を選んでください。
将来性があるプログラミング言語を選ぶ
引用元:TIOBE
まずは将来性があるプログラミング言語を選びましょう。せっかく技能を身につけるのですから、それが廃れてしまうのはもったいないですよね。
プログラミング言語の将来性に関して、TIOBEが参考になる資料を発表してくれています。これは「インターネット上でどれくらい話題になっているか」という指標で、パーセンテージが伸びているor安定しているプログラミング言語が「将来性あり」と判断できます。
たとえばここ最近での伸びが著しいPython(グラフ内黄緑色)は、AIやブロックチェーン技術によく使われています。AIやブロックチェーン技術は今後まだまだ伸びてくるため、代替のプログラミング言語が出現しない限りPythonは十分「将来性あり」といえるでしょう。
- JavaScript
- C++
- C#
も手堅いといえます。
求人があるor希少性の高いプログラミング言語を選ぶ
求人があるというのも大事な要素です。
「プログラミングを勉強しよう」と考える理由の大半は、以下の2点に集約されるものです。
- 作りたいものがある
- 転職(就職含む)してお金を稼ぎたい
作りたいものがある人以外、プログラミング学習最初ののゴールは就職なのです。
そこで、2020年1月25日現在の求人数を求人サイトIndeedで調査しました。
その結果がこちらです。
【プログラミング言語別求人数と、推定年収600万円以上の割合】
順位 | 言語 | 掲載求人(件) | 推定年収600万以上の数(件) | 推定年収600万以上の割合(%) |
---|---|---|---|---|
1 | Java | 36,992 | 3,935 | 10.6 |
2 | PHP | 24,904 | 9,510 | 38.2 |
3 | C言語 | 23,075 | 2,830 | 12.3 |
4 | C# | 18,761 | 2,965 | 15.8 |
5 | C++ | 16,243 | 2,799 | 17.2 |
6 | JavaScript | 15,151 | 3,944 | 26.0 |
7 | Python | 14,932 | 4,406 | 29.5 |
8 | Ruby | 9,897 | 2,900 | 29.3 |
9 | Swift | 3,942 | 1,478 | 37.5 |
10 | Kotlin | 2,189 | 1,081 | 49.4 |
Javaが圧倒的な求人数で1位。そのJavaにPHPやC言語が続く傾向となっています。
また希少性の高いプログラミング言語を選ぶという点も大切です。
求人数としては決して多くないSwiftやKotlinですが、推定年収600万円以上の割合は、
- Swift:37.5%
- Kotlin:49.4%
と高水準。エンジニアが不足している分、報酬も高くなっているのです。
今からプログラミング言語を選択する場合は、目先の求人数だけではなく、就職後の報酬についても考えてみましょう。
特別なプログラミング言語は選ばない方がよい
特別なプログラミング言語は選ばない方が無難です。極端な例として、「ラダー図」が挙げられます。
このようなかなり風変わりなプログラミング言語なのですが、産業機械の制御には2020年現在でも使われていますし、ハローワークの求人に「ラダー図のスキル:要」な案件も見られます。
とはいえラダー図はあまりにつぶしが効きません。どれくらい効かないかというと、PLC(ラダー図を処理するドライバーみたいなものだと思ってください)のメーカーが変わると互換性がなくなる記述があるくらい。
私の経験上、C言語を知っているとラダー図の習得も早いのですが、逆は結構厳しいんじゃないかな。。。生産設備のコーディングに一生を捧げることが確定しているならまだしも、今から学ぶのはどうなのでしょうか。
またラダー図ほどではありませんが潰しが効きづらい言語と言われるのがPHP。
- ルーズに書いても動くのは動く(しかし動作が遅い)
- Web特化という特性から特殊な記述が多い
- WordPressがあり需要は多いが、人気は下火傾向
これらの特徴から、求人数に反して下記のランキングからは除外しました。
とくにルーズに書いて動いてしまうことが罪深く、他の言語に移行したときの「厳格さ」を受け入れられなくなってしまう人が多いのです。
他の言語を学んだ上でPHPを第2言語として習得し、キャリアアップを狙う選択肢はアリだと思います。しかし、プログラミングの入り口がPHPは正直おすすめできません。
2020年にはじめたいプログラミング言語ランキングベスト5
以上より選定した、2020年にはじめたいプログラミング言語ランキングベスト5を紹介します。
第一位:Python
2020年にはじめたいプログラミング言語ランキング第一位はPythonです。PythonはAIやブロックチェーン技術の発展とともに、今後どんどん需要を拡大していくでしょう。
またPythonの魅力は汎用性の高さです。仮にAIやブロックチェーンが他のプログラミング言語に取って代わられる事があっても、PythonエンジニアにはWebアプリ開発という道が残されています。実際FacebookやInstagramの一部もPythonで作られているのです。
また電子工作によく使われるRaspberry PiもPythonで動くので、趣味も充実します。このように多方面に活用できるので、2020年にはじめるプログラミング言語にはぴったりではないでしょうか。
なお、Pythonについては、こちらで詳しくまとめています。
第二位:JavaScript
第二位にはJavaScriptを選びました。
JavaScriptとはWebサービスに利用されるHTMLのリンクファイルです。動的なページを作成できる(静的:いつ誰が見ても変化のないページ、動的:SNSのように誰が見るか、いつ見るかによってページ内容が変化するページ)強みがあるのですが、JavaScriptの用途はそこにとどまりません。
- JQueryによる開発の効率化も進んでいる
- ほぼすべてのブラウザ上で動く
- jsにより、サーバー側の開発も可能
- Reactなどのフレームワークによりモバイルアプリ開発の需要も高い
このように、使い勝手抜群のプログラミング言語です。
2020年現在の求人数もかなり多く、また廃れにくい言語ともいえるでしょう。
第三位:Go
GoはGoogleが作成したプログラミング言語です。
- シンプルな言語で実行速度が早い
- クロスコンパイル(MacでWindowsのバイナリが書ける)
- 安全性高
- 同期処理が容易
いいことづくめで、Webサービスやサーバーによく使用されはじめています。
また、Goをおすすめする理由には、圧倒的な報酬の高さがあります。株式会社ビズリーチが2019年に発表したプログラミング言語別年収ランキングでは、Goが年収中央値、最大提示年収とも1位でした。
求人数こそ多くはありませんが、習得することでキャリアを大きく伸ばせるプログラミング言語のひとつです。
第四位:Kotlin
KotlinはGoogle I/O 2017にてAndroidが公式にサポートするという発表があり、一気に注目を集めた言語です。
- Javaと100%相互運用可能
- Javaよりもシンプルかつ安全
- サーバーサイド、クライアントサイド(Web)、Androidアプリ開発と汎用性高
このように、Javaに熟練したプログラマにも「Kotlinを使ったらJavaには戻れない」と言わしめる特徴をもつKotlin。
年収600万円オーバー率も半数近くに上り、高収入のキャリアを望めます。
第五位:C++
2020年にはじめたいプログラミング言語ランキング第5位にランクインしたのはC++です。
ただし、C++は習得難易度が高めなプログラミング言語です。
- 記述量が多い
- エラーの表示が不親切
- 少しの記述ミスで致命的なエラーを引き起こす事がある
PythonやKotlinなどの新しめのプログラミング言語と比較すると上記のような特徴が見られるため、いわゆる「初見殺し」な言語ともいわれています。
しかしその分、習得後のメリットも多いです。
- 汎用性トップレベル
Webアプリからサーバーサイドまで、新しい言語でできることならほぼ何でもC++で可能
- C言語ともほぼ互換あり
最も古い言語の一つ、かつ今でもかなり使われるC言語にも対応可能
- 処理が高速
大規模な開発にもってこい
- ファイルサイズを小さく抑えられる
小規模組み込み(IoTなど)と相性良
このように、C++をマスターするとIT業界のどこでも通用する人材となれます。2020年の今から学んでもまったく遅くなく、むしろ息の長いプログラマとなれるでしょう。
あまり悩みすぎずはじめてしまうのが吉
プログラミング言語の選び方を紹介してきましたが、まずはあまり悩みすぎずに選んでしまうことが大切です。
勉強をはじめないと見えてこないことも多いですし、「ひとつの言語を学び始めたら他の言語には一生浮気してはならない」というわけでもありません。むしろこれからの時代は、言語の垣根を超えて一つのプロジェクトに当たることができる「フルスタックエンジニア」が求められています。
まずはひとつの言語をマスターしつつ、時代の変化に合わせて柔軟にスキルを広げていけるエンジニアを目指しましょう!