オススメのプログラミング言語ランキングTOP10の特徴【2019年版】

PROGRAM

どの言語を学ぼうか迷っている方に。

この記事を読まれている方は、

  • 各プログラミング言語の種類と特徴を知りたい
  • 初心者にオススメのプログラミング言語を知りたい

おそらくこのように考えている方が多いと思います。

この記事を書いている私は、
プログラミング未経験から転職を果たした現役のWeb系エンジニアです。
エンジニア歴は3年ですが、本業とは別にフリーランスの副業で月10万円ほど、多いときで20万円ほどの収入があります。

この記事では、現役のエンジニアが、初心者の方向けに各プログラミング言語を解説・比較し、オススメをランキング形式でまとめています。

初心者にオススメのプログラミング言語ランキングは求人件数ランキング

初心者にオススメのプログラミング言語ランキングは求人件数ランキング

初心者がプログラミング言語を選ぶ際は、「求人件数」で選ぶことをオススメします。

初心者にオススメのプログラミング言語ランキング=求人件数ランキング

理由は「年収」で選ぶと、いきなり難易度の高い言語を勉強することになりハードルが高いからです。
また、年収が高い言語はプログラミングを十分に理解した人たちが手を出すべきで、初心者が手を出しても、その言語が廃れた際に潰しが効かなくなる恐れがあります。

したがって、初心者はまず求人件数の多いプログラミング言語を選ぶと良いと思います。

2019年6月20日現在、求人サイト「indeed」での主要なプログラミング言語の言語別求人件数は以下のとおりとなっています。

順位 言語 求人件数
1 C言語 39,932
2 PHP 38,772
3 Java 33,811
4 C# 29,759
5 Python 24,605
6 Ruby 21,926
7 JavaScript 19,031
8 Perl 17,758
9 Objective-C 15,418
10 VB.NET 9,741
11 Swift 5,446
12 ASP.NET 3,442
13 Go 2,890
14 R 2,248
15 Kotlin 2,074
16 Scala 1,818
17 TypeScript 853

参照元:indeed

C言語は、確かに案件数は多いのですが、初心者にとっては参入障壁が少し高いのと、他の言語が普及しているということもあり、組み込み系以外ではJavaなどが選択されるケースが多いと思います。

たとえば、Web系ならPHPかJava、Androidアプリの開発であればJava、iPhoneアプリならObjective-Cが一般的で、C言語が使われることはあまりありません。
※あくまで実際の開発現場で働く一エンジニアとしての解釈です。

それに加え、現代のプログラミング言語の多くはC言語が祖のため、必要に迫られれば、プログラミングに慣れて来た頃の方が、簡単にC言語を学習できると思います。

そのため、ここではC言語を除いた、オススメのプログラミング言語10選を紹介したいと思います。

オススメのプログラミング言語TOP10の特徴

オススメのプログラミング言語TOP10の特徴

1位 PHP

良い点

PHPはスクリプト言語であり、実行前のコンパイルが不要です。
また、曖昧な型定義やデバッグのしやすさなどから間違いなく初心者にお勧めの言語です。
オブジェクト指向型言語のため、他言語同様、クラスでカプセル化などできます。
LaravelというMVCのフルスタックフレームワークがあるのでrubyに劣らず、未だに根強い人気があります。
そして、当サイトもそうですが、WordPressでブログの運営やホームページの制作が誰でも簡単にでき、一般に広く普及しています。
何かあってもネット上にサンプルコードがたくさん転がっており、開発時の手間が少ないです。

悪い点

曖昧な型定義のため、データのフォーマットが明確ではなく、他システムとの連携時などは文字列か数値かなどをきちんと区別した方が良いでしょう。
曖昧さを多く許容した言語であることから、動作は他の言語に比べて遅いです。

用途

主にWeb系アプリケーションの開発に使われる言語です。
また、レンタルサーバーでも対応しているところが多く、どこでも動かすことができます。
Laravelのおかげで高速開発などもできますし、WordPressでブログ運営やホームページ制作もできます。

2位 Java

良い点

JavaはOracle社がサポートしている言語ということもあり、大手企業の案件でよく使われる(指定される)言語です。
PHPとは異なり、明確な型定義などがあるオブジェクト指向型の言語で、きちんとプログラミングをやりたい方にオススメの言語です。
フレームワークもたくさんあり、SpringやStrutsなどがあります。Web系・アプリ系両方に対応しています。
JSPでなければ、PHPと比べると処理速度はJavaの方が早いです。

悪い点

PHPに比べ、環境の構築やコンパイルなどの手続きが面倒です。
また、JSPというJavaのPHPバージョンのようなものがあるのですが、それを使うぐらいであれば、最初からPHPでも良いのではと思ってしまいます。

用途

Web系・アプリ系の開発のどちらでもよく使われる言語です。
また、Androidアプリの開発ではGoogleが標準開発言語に指定しています。
Kotlinという言語もありますが、Javaと100%互換です。

3位 C#

良い点

C#はMicrosoftが開発した言語で、.NET Frameworkの環境下で動作します。
後ろ盾が最強なのでVisual Studioという非常に使いやすい統合開発環境があります。
Javaライクな言語となっているため、C言語系の開発に慣れた人にも習得しやすい言語です。

悪い点

コーディングのしやすさや開発環境の使いやすさがあるので、あまり悪いところは見当たりません。強いて言えば案件数がやや劣るというところでしょうか。
また、Javaなどとは違ってWindowsでしか動かないという難点もあります。
Javaをやってる人からしたら、C#に移る理由はあまりないのかなとも思います。
Web系の開発も可能ですが、IIS(Webサーバーソフト)が必要です。

用途

Web系・アプリ系のどちらでもよく使われる言語ですが、業務アプリに多いイメージです。
また、MicrosoftがXamarinを吸収したこともあり、AndroidアプリやiPhoneアプリの開発も可能です。さすがMSさんという感じですね。

4位 Python

良い点

PythonはAIなど機械学習で注目を浴びている言語です。
その方面ではライブラリなどが充実しており、他言語よりも開発がしやすいです。
基本的に従来やらなかったようなことをやろうとすると、この言語を選ぶ可能性も高くなるのではないかと思います。
ペッパー君なんかもPythonで作られています。

悪い点

スクリプト言語のため、実行前のコンパイルは不要ですが、
実行時の構文チェックが厳しいので少し面倒です。
C言語系では、分岐や繰返などの処理の始まりと終わりを意味するのに{}が使われますが、Pythonではそれがなく、代わりにインテンドで位置をずらすことで認識しています。
そのインテンドが、Tabでは許容されず、半角スペース4つでないといけないというルールがあります。
それが慣れるまではちょっと面倒に感じます。

用途

Web系・アプリ系どちらでも使われる言語ですが、機械学習などの最先端の開発に使われるケースが多いです。
Web系においてもDjangoというMVCのフレームワークがあり、活用することができます。

5位 Ruby

良い点

RubyはPHPと似ていて、スクリプト言語です。
Rubyの良さは何と言ってもruby on railsというフレームワークが充実しているところでしょう。
gemというライブラリを使って高速開発が実現できます。
現在はPHPにLaravelがあるので、勢いが失速しているような気がしますが、サンプルコードはまだまだネットにたくさん転がっています。

悪い点

強いて言えば、高速開発ができるくせにレンタルサーバーでは動かない点でしょうか。
また、ruby on railsはわかるけどrubyはわからないといった状態になりやすいので、
私の場合はMVCの理解のためだけに学習しました。この考え方自体はモダンなWeb系プログラミング言語においては重要であると思いますので、ある程度プログラミングに慣れてきた段階で一度試してみる価値はあります。

用途

限られた予算や工期の中で開発を行うのに適しています。
ただし、現在はLaravelで良いような気がしますので、無理にこちらに合わせなくても良い気がします。

6位 JavaScript

良い点

JavaScriptはこの順位にランクインしているものの、Web系プログラマーを目指すなら、深さは別にして確実に習得が必要です。
なぜなら、フロントエンドのプログラムはほぼJavaScriptのみに限られるからです。
JavaScriptにはjQueryというライブラリやReact、Angularというフレームワークなどがあり、JavaScriptそのものを勉強するというよりは、ライブラリやフレームワークを使いこなせるということが重要です。
言語としてのJavaScriptは、初心者はさらっと学ぶにとどめておくのが良いかと思います。

悪い点

ライブラリやフレームワークに依存しすぎると、何かトラブルが発生すると自分で解決できなくなるので注意が必要です。一方で、JavaScriptそのものだけを勉強しても現場ではライブラリやフレームワークを利用することの方が多いので、中途半端にならないように気をつけなければいけません。

用途

Web系ではほぼ100%使います。やや特殊で内容も濃いので難易度は高いですが、JavaScriptをマスターすれば引く手数多だと思います。案件数が一位でない理由は、フロントだからです。通常サーバーサイドの方が主要な処理を担当します。

7位 Perl

良い点

言語も役割もPHPとかなり似ています。PHPが流行る前は完全にPerlの時代でした。レンタルサーバーでは今でも対応しているところが多いです。
昔の掲示板などはPerlで書かれたものが多く、一般人にも広く普及した言語です。

悪い点

案件がないわけではないですが、新規案件においてはPHPとPerlであればほぼPHPが選ばれます。Perlを勉強するぐらいならPHPを勉強しておきましょう。

用途

Web系アプリケーションで使われる言語です。一般においては昔の掲示板などのWebサービスで広く普及した言語です。

8位 Objective-C

良い点

Objective-Cはその名のとおり、C言語をベースにオブジェクト指向機能を追加した言語です。MacOSやiOSの公式開発言語とされています。iPhoneアプリの開発をするなら推奨の言語です。

悪い点

Macはさておき、iPhoneのシェアは日本においても徐々に下がっており、既に半数を切っています。このまま進むとAndroidにシェアを奪われていき、iPhoneアプリの開発も減ってくるものと予想できます。

用途

MacOSやiOSのアプリの開発に使用されます。多数派向けの言語ではないということを理解しておくべきでしょう。

9位 VB.NET

良い点

VB.NETはMicrosoftの.NET Frameworkの環境下での開発で使える言語です。ExcelVBAと系統が同じであり、VBA慣れしている人にとっては、最も習得しやすい言語と言えるかもしれません。C#と同様に便利なVisual Studioという統合開発環境が使えます。

悪い点

MicrosoftがC#を開発したため、現在はC#の方が流行っています。また、ネットにおいてもC#の方が、サンプルが豊富でフォーラムも発展しているので、VB.NETをあえて選ぶことはしないです。この言語のつらいところは、ここで挙げた他の言語が全てC言語ファミリーであるのに対し、VB.NETだけがBASICを祖としていて系統が異なるという点です。

用途

Windowsの.NET Frameworkの環境下で動作するアプリケーションが作れます。主に業務アプリが大半です。

10位 Swift

良い点

SwiftはiOS、MacOS、Linuxで利用できる言語です。現在AppleはObjective-CよりSwiftの使用を推奨しておりますが、現実はObjective-Cの方を好む開発者が多いです。

悪い点

C言語がベースなのがかえってわかりやすく、ライブラリが充実していることなどから、私としてもSwiftよりはObjective-Cを使った開発の方が良いのではないかと思います。
Apple自身がOSやフレームワークなどにSwiftを使っていないこともあり、Swiftに移行する人の数も限定的です。

用途

MacOSやiOSのアプリの開発に使用されます。ただし、Objective-Cが採用されるケースも多いです。

まとめ:初心者なら上位3位以内の言語を選ぼう!

まとめ:初心者なら上位3位以内の言語を選ぼう

特に理由がない限りは、上位3位のPHP、Java、C#の中から習得する言語を選ぶべきと思います。
以下に各言語の特徴を簡単にまとめておきます。

  • 1位 PHP・・・素人・玄人共によく使われるWeb系言語
  • 2位 Java・・・Web系・アプリ系共によく使われる万能言語
  • 3位 C#・・・統合開発環境が魅力的なMicrosoftの言語

求人件数が多いPHPは、学習コストも少なく本記事の中では最もオススメです。
とりあえず迷って学習が進まないぐらいであれば、PHPを選びましょう。
PHPはC言語ファミリーなので、ある程度慣れてくれば、他の言語を習得することも比較的容易です。

参考までにプログラミングスクールや独学での勉強法の記事を紹介しておきます。