Ruby
Rubyは、まつもとゆきひろさんという日本人によって開発されたプログラミング言語です。日本人が開発したため、学習するための書籍やバージョンが新しくなったときの説明が日本語で書かれ、すぐに学ぶことができるので、日本人にはそれだけでメリットのあるプログラミング言語です。
Rubyは、「Enjoy Programming」を掲げている通り、プログラマーがストレスなく効率的にプログラミングができるように考えられています。その考えが表れているのが「Ruby on Rails」と呼ばれるフレームワークです。数行のプログラムを書くだけで、自動的にWebサイトを作ることができます。クックパッドやクラウドワークス、Airbnbなどは、Ruby on Railsを採用して作られています。
PHP
PHPはサーバーサイド(Webサーバー上で動作するプログラム)の言語です。JavaScriptなどクライアントからのリクエストに対し、サーバー側でプログラムを実行、その結果をクライアント側へ送ります。具体的には、掲示板や問い合わせフォーム、ECサイトのショッピングカートなどが挙げられます。購入者は、ECサイト上でカートに商品を入れたあと、商品の種類や数が画面上で確認することができますが、これはPHPがサーバー側がクライアント側に情報を返す処理が実行されているためです。
Webサイトの多くに使われているWordPressにもPHPが使われています。個人でWordPressを使ってサイト運営している方は、PHPを学ぶことで相乗効果が得られます。
Scala
Scalaは、TwitterやLinkedInで利用されているプログラミング言語です。Javaを基にして作られており、JavaでできることはScalaでもできます。ただ、Scalaはオブジェクト指向言語と関数型言語を組み合わせたハイブリットな言語であるため、オブジェクト指向言語と関数型言語の両方を理解していないと十分にメリットを引き出すことができません。そのため、初心者には習得までに時間がかかるというデメリットがあります。
アプリ開発、Webサービス開発、ゲーム開発、Webサイト開発、データ分析といった広い範囲で活用できるので、開発をしたい企業にとってはScalaを扱えるプログラマーは重宝されます。
C++
C++は、プログラミング言語の基本ともいえるC言語の進化版です。C言語と同じく、汎用性が高いのが特徴です。具体的には、大企業の業務システムや金融システムなどに使われています。汎用性の高さからロボット開発などにも使われており、今後も引き続き需要の高い言語の1つです。
ただ、習得するにはコンピュータの仕組みを詳しく理解している必要があります。そのため、初心者にはハードルが高いプログラミング言語と言えるでしょう。
Swift
Swiftは、アップルが開発したプログラミング言語で、iPhone・iPad向けのアプリ開発には欠かせません。開発するにはMacが必要となりますが、iPhoneやiPadのシェアの高さを考えると十分に需要のあるプログラミング言語と言えるでしょう。
また、iPhoneやiPadのアプリ、Apple TVのアプリ開発以外に、WebアプリやWebサーバの開発にも利用することが可能です。
Go
Goは、2009年にGoogleが開発した比較的新しいプログラミング言語です。Goは、安全性が非常に高い言語とされており、メモリーがリークされにくいと言われています。また、シンプルな言語なので、初心者でも学びやすいというメリットがあります。
日本では比較的求人案件が少ない言語ですが、シェアは拡大しており、Goを扱えるプログラマーの平均年収は、ほかの言語よりも高い傾向にあります。
Java
Javaは1990年代前半にアメリカで開発されたプログラミング言語で、世界的に高い信頼を得ています。その理由は、OSに依存しないという点が大きいです。開発したソフトがWindowsなのかmacOSなのかに依存しないため、汎用性が高く多くの現場で利用されています。
また、処理速度が速いという特徴があります。PHPやRubyなどに比べると難易度は高くなりますが、プログラミングの基礎を習得することができます。学びたいプログラミング言語やシェアではトップの常連になっています。
C#
C#は、マイクロソフトが積極的に開発しているプログラミング言語で、日々できることが増えています。C#は、マイクロソフトの公式ホームページやSkype公式サイト、MSNなどに使われています。
マイクロソフトが開発しているのでWindows向けのアプリ開発に使われることが多いですが、macOSやiPhone、Android向けのアプリを開発できる汎用性もあります。
プログラミング言語のシェア
2019年に発表されたプログラミング言語のシェア率をご紹介します。1つ目の表は、検索エンジンでの検索回数を基に算出されるプログラミング言語のシェア率です。2018年と2019年のトップ3は変わらず、Java、C、Pythonとなっています。また、上位20位の中ではPythonが大きな伸び率を示しており、機械学習やディープラーニングのテクノロジーが発展するにつれて、Pythonのシェア率は今後も増えていく可能性があります。
(参照元:TIOBE Index for September 2019|TIOBE)
2つ目は、PYPLが発表したもので、Googleの検索エンジンの検索回数を基に算出しています。Javaを上回り、Pythonがシェア率、伸び率共にトップになっています。また、Java、JavaScript、PHP、CやC++・C#が上位にランクインしているのはTIOBEの結果とあまり変わりません。
(参照元:PYPL PopularitY of Programming Language|PYPL)
この2つの調査結果から、2019年時点ではPythonが非常に注目されているプログラミング言語であることが分かります。また、JavaやC言語など多くのシステムで使われているプログラミング言語は、利用者が多い分、検索される頻度も高いようです。
プログラミング言語の求人数
日本におけるプログラミング言語別の求人数では、Javaがダントツの1位になっています。約1/3はJavaの求人と言っていいでしょう。また、2位のPHPを含めると約45%をトップ2で占めることになります。
(参照元:プログラミング言語別求人ランキング【2019年6月発表】|レバテックキャリア)
伸び率では、Javaに次いで、Python、Unity、Ruby、Goが昨年度比で大きな成長を示しています。一方でPHPやC言語はマイナスになっているのが分かります。
(参照元:プログラミング言語別求人ランキング【2019年6月発表】|レバテックキャリア)
まとめ
プログラミング言語にはそれぞれに特徴があり、得意なことや不得意なことがあります。さらに、日々発展しており、新しい言語も生まれています。そう考えると、プログラミング初心者がどの言語を学ぶべきか迷うのは当然です。どんなことができるようになりたいのかを念頭に置いてプログラミング言語の特徴を調べ、ご自身に合った言語を選ぶことをおすすめします。この記事が、プログラミング言語の特徴やトレンドを知るきっかけになれば幸いです。
参考
The Big List of 256 Programming Languages |DZone
【2018年版】初心者はどの言語が良い?おすすめプログラミング言語ランキングTOP10|TECH NOTE
初心者必見!おすすめプログラミング言語10選の特徴と難易度|エンジニアの入り口
【2019年最新】おすすめプログラミング言語を徹底比較ランキングTOP10|Samurai Blog
【初心者向け】プログラミング言語の選び方 – 様々な種類の言語を一覧で紹介します|CREATIVE VILLAGE
【初心者向け】プログラミング言語選びを間違えないように言語の特徴と職種をまとめました|ボクノカノジョハテクノロジー
今学ぶべきプログラミング言語ランキング【2019年最新版】|Code Campus