プログラミング教育の必修化やIT人材の不足などの影響で、プログラミング技術の需要が大きくなってきている今日この頃、これからプログラミングの学習を始める人も多いでしょう。

しかし、いざプログラミング学習を始めようと思って調べてみると、世の中にはたくさんのプログラミング言語が存在することがわかり、

「どの言語が良いのかわからない」
「何を基準に言語を選べばいいのだろう?」

といった疑問がわいてくるかと思います。

そこでこの記事では、学習するプログラミング言語について、

  • 「なにを作りたいのか」から考える選び方
  • 平均年収や働き方から考える選び方

を紹介していきます。

作りたいものからプログラミング言語を選ぶ

1つ目の選び方は、作りたいものからプログラミング言語を選ぶという考え方です。

プログラミング言語は言語によって得意なことが違います。例えばTwitterのようなWebサービスを作りたい場合と、パズドラのようなスマホゲームを作りたい場合では使用する言語が異なります。

プログラミングを学習して作りたいものが決まっているのであれば、それを作るのに適した言語を選びましょう。

それでは、目的別のおすすめプログラミング言語を紹介していきます。

Webサービスを作りたいならRubyやPHP

TwitterやFacebookのようなSNSやクックパッドや食べログなどの口コミサイト、AmazonのようなECサイトといったWebサービス(Webアプリケーションとも)を作りたいのであれば、プログラミング言語はRubyとPHPがおすすめです。

RubyやPHPを使うことで、ログイン機能や投稿機能といったWebサービスに必要な機能の実装ができます。

Rubyとは

Rubyは日本人によって作られたプログラミング言語で、後述する言語別求人数ランキングでも1位をとっている人気の高い言語です。

Rubyは他の言語と比べたときにコードの記述量が少なく文法が直感的にわかりやすいという特徴をもっています。

また、日本発祥の言語のため日本語の解説や資料も多く、プログラミング初心者が学習しやすい言語です。

Rubyの人気の理由として「Ruby on Rails」というWebアプリケーションフレームワークの存在があげられます。

Webアプリケーションフレームワークとは、Webアプリを効率的に開発するためのツールです。

Rubyを使ったWebアプリケーションの多くがRuby on Railsを活用していて、AirbnbやクックパッドなどもRuby on Railsを使って作られています。

PHPとは

PHPはWeb開発を目的として作られたプログラミング言語です。

PHPもRubyと同様に構文がシンプルなため、初心者でも理解しやすい言語といわれています。

FacebookやWikipediaなど世界中で様々なWebアプリケーション開発に使われているPHPですが、PHPを使って作られた代表的なものはなんといってもWordpressです。

WordPressはブログやコーポレートサイトといったWebサイトを簡単に制作することができるツールで、なんと全ウェブサイトの約30%がWordpressを使って作られています。

PHPを学習することでWordpressを使った開発もできるようになるのも大きな強みといえるでしょう。

ゲームを作りたいならUnity

ゲームに使うプログラミング言語はゲームの種類によって異なります。

そこでおすすめしたいのがUnityです。

Unityとは

Unityはプログラミング言語ではなくゲーム開発プラットフォームです。

「ポケモンGO」もUnityで作られています。

Unityを使うことで、開発したいゲームに合わせたプログラミング言語で開発することができます。以下はUnityで作ることのできる主なゲームです。

  • PlayStationやNintendo Switchなどのコンシューマゲーム
  • ウェブブラウザ上で動くブラウザゲーム
  • スマホゲーム
  • PCゲーム

このように一般的なゲームであればなんでも作れてしまいます。

しかも、簡単な3DゲームであればUnityを使うことでプログラミングをすることなく作成可能です。

JavascriptやC#といったプログラミング言語を使うことでさらに高度なゲームを開発できるので、合わせて勉強するといいでしょう。

スマホアプリを作りたいならSwiftかKotlin

スマホアプリの開発に使う言語は、iPhoneとAndroidで異なり、基本的にはどちらかに限定して開発していくことになります。

iOSアプリならSwiftAndroidアプリならKotlinを使用します。

iPhoneアプリの開発はSwift

SwiftはApple社が開発したプログラミング言語で、Apple社はiPhoneアプリの開発に使用することを推奨しています。

iPhoneアプリはXcodeというiPhoneアプリ開発ツールを使って開発をおこないますが、XcodeはWindowsでは使えないため、開発にはMacを使う必要があることに注意してください。

また、SwiftはiPhoneアプリ以外にも使用でき、様々な企業で取り入れる動きも高まってきていることもおすすめポイントです。

Androidアプリの開発はKotlin

Androidアプリの開発におすすめしたいのが、2011年に発表されたKotlinという言語です。

以前はAndroidアプリの開発にはJavaという言語が使われることが多かったですが、2017年にGoogleがAndroidアプリの開発にKotlinを公式採用したことで急速にシェアを伸ばしています。

後述するプログラミング言語別の年収ランキングでも上位に入っており、2019年現在勢いのある言語であるため、これから学習するのにもおすすめできます。

機械学習をしたいならPython

近年話題のAIや機械学習などのプログラミングをするにはPythonがおすすめです。

Pythonとは

Pythonはコードの読みやすさを重視した言語で、プログラミング初心者にもわかりやすい言語です。

機械学習におすすめの理由としては、

  • Pythonには機械学習でよく使われる機能をまとめたライブラリが豊富であること
  • Python使用者のコミュニティが非常に活発で、機械学習に関する新しい技術は最初にPythonで実装されることが多いこと

などがあげられます。

機械学習のプログラミング以外にもWebアプリケーションの開発も可能で、言語別の年収と求人数でも上位に位置するとてもおすすめな言語です。

働き方からプログラミング言語を選ぶ

2つ目は、案件数や年収、リモートワークのしやすさなどの希望の働き方からプログラミング言語を選ぶ選び方です。

プログラミングを職業にしたいと考えているのであれば需要が高いものを学習すると仕事の案件数も多いためおすすめです。

なお、この記事のデータは転職ドラフト結果報告レポート2018を参考にしています。

案件数1位はJavascript

開発者がもっとも現場で使用しているプログラミング言語として選ばれたのは、Webサービスのフロントエンド開発に使われる言語であるJavascriptです。

Javascriptとは

Javascriptはブラウザ上で実行されるクライアントサイドとWebサーバー上で実行されるサーバーサイドのどちらでも利用可能な言語です。

Javascriptのクライアントサイドでは、一般的にWebサイトに動きをつけるときに使われます。例えばポップアップウィンドウや画像のスライダーなどは基本的にJavascriptで実装されています。

近年ではNode.jsというサーバーサイドで動くJavascriptも注目されています。サーバーサイドで動く言語には他にはPHPやRubyなどがあり、これらのサーバーサイド言語を使うことでログイン機能などといったWebサイトに必要な機能を実装することができます。

学習の際に、開発環境の構築や実行の難易度が低いことも初心者向けです。

Javascriptは人気の言語ランキングでも上位に位置することも多く、覚えておいて損はない言語といえるでしょう。

平均年収1位はScalaの678万円

平均提示年収額がもっとも高かった言語がScalaで、その額は687万円でした。

Scalaとは

Scalaは2003年に誕生したプログラミング言語で、海外のIT企業で利用されることが多いです。

現状では国内でのScalaの求人案件は少ないですが、今後国内でも需要が増えてくることが期待されています。

Scalaで作れるものは多岐にわたり、例えばTwitterにもScalaが使われています。

難点としては、関数型言語でありプログラミング初心者にとっては理解が難しいことや国内では普及が進んでいないので日本語の情報が少ないことなどがあります。

しかし、難易度が高い言語であるということは、習得すれば希少価値の高い人材になることができるので、挑戦してみるのもいいでしょう。

リモートワークを目指すならRubyやPHPなどのWeb系の言語

近年注目されている働き方であるリモートワーク。プログラミング言語によってリモートワークがしやすい言語とそうでないものがあります。

結論からいうと、リモートワークにはRubyやPHPといったWebアプリケーションの開発言語がおすすめです。

これはRubyやPHPがプログラミング言語としてリモートワークに適しているわけではありません。Web系の会社がリモートワークに適しているため、それらの企業で使われているWebアプリケーションの開発言語がおすすめということです。

実際にプログラミング言語を使った仕事はWebアプリケーションの開発以外にも業務システム(勤怠管理、在庫管理など)の開発などがありますが、リモートワークが可能な企業のほとんどがWeb系の企業です。

RubyとPHPはどちらがおすすめなのかということですが、

現状案件が多いのがWordpress案件も扱えるのがPHP
ベンチャー企業で採用されていることが多いのがRuby

という傾向があります。

クラウドソーシングなどで仕事をとりたい場合はPHP、リモートワーク可能なベンチャー企業で働きたい場合はRubyというイメージですが、必ずしもそうではないので気になったほうを勉強すればよいでしょう。

決められない人は学習コストの低いHTML/CSSがおすすめ

ここまで目的別、働き方別のプログラミング言語の選び方を紹介してきましたが、最後にどうしても決められない人が最初に学習するのにおすすめの言語を紹介します。

それはHTML/CSSです。

HTML/CSSとは

HTML/CSSは厳密にはプログラミング言語ではありませんが、学習難易度も低く習得することで仕事にもつながりやすい技術です。

HTML/CSSはWebサイトの見た目をつくる言語で、サイトのメニューや見出しなど、ブラウザに表示される部分はHTML/CSSで作られています。この文章もHTMLによって表示され、CSSで見出しや目次などのデザインが作られています。

RubyやPHPでWebサービスを作る際にもブラウザに表示をする実装はHTML/CSSでおこなうので、学習しておいて損はないでしょう。

また、HTML/CSSを習得するとクラウドソーシングなどで仕事が取れるようになります。学習難易度が低いのに案件数が多いのもプログラミング初心者へのおすすめポイントです。

関連記事:副業でプログラミングを始めるなら、初心者にはサイト制作がおすすめ

プログラミング言語の選び方は、目的or働き方から

プログラミングを学んで自分の考えたサービスを作ったり、理想とする働き方を手に入れることで人生はより豊かになるでしょう。

初めてのプログラミング学習はわからないことも多く大変かもしれません。

そんなときに挫折をしないためにも、プログラミング言語を選ぶ時点で、

何を作りたいのか?どのように働きたいのか?

という点を考えてから学習に取り組んでみてください。