バナー画像

世の中にはどれほどのプログラミング言語があるのでしょうか?一説には200とも300とも言われていますが、一般に知られていない言語を加えれば300どころではないかもしれません。ただ、実際に現役で使われている言語は50未満でしょう。

仮に50に絞り込めたとしても沢山のプログラミング言語があるとどれを選択したらいいか分からなくなりますので主要なプログラミング言語について様々な角度で調べてみましょう。

この記事の結論
  • プログラミング言語の数が多い理由は、課題をうまく解決するために最適なプログラミングを開発してきたから。
  • プログラミング言語の違いとして、コードの書き方、変数の型、コンパイルの有無など挙げられる。
  • 数多いプログラミング言語から1つを選ぶとしたら、ニーズが高い言語がおすすめ。

最新人気プログラミング言語ランキング

IEEE Spectrumが発表した2021年の人気プログラミング言語ランキングには全部で55個のプログラミング言語がランキングされています。

このランキングはGitHubから抽出した全言語をGoogle検索などでふるいにかけ選ばれたプログラミング言語に対して12の評価項目からランキングを算出したものです。

ベテランエンジニアであっても聞いた事がないというようなプログラミング言語も含まれていますが、現在赤丸急上昇のPythonが2021年度の第1位というのは時代を反映しているのではないでしょうか。

順位 プログラミング言語 スコア 一言コメント
1 Python 100.0 近年人気急上昇のPythonです。今、Pythonが出来ると引っ張りだこです
2 Java 95.4 業務システムではスタンダードです。
3 C 94.7 古いプログラミング言語ですが組み込み用途では現役です。
4 C++ 97.2 C言語にオブジェクト指向要素を盛り込んだ言語です。
5 JavaScript 88.1 Webブラウザ向けのプログラム言語でしたが、Webサーバー側で使われる例も増えています。
6 C# 82.4 マイクロソフトのプログラミング言語です。C/C++とは縁もゆかりもありません
7 R 81.7 統計解析のための専門言語で、機械学習などで使われます。
8 Go 77.7 Googleが作成したスクリプト言語です。
9 HTML 75.4 マークアップ言語ですがランクインしています。
10 Swift 70.4 Appleが作成したiOSアプリを作成する言語。
11 Arduino 68.4 マイコン向けのC++みたいな言語。
12 Matlab 68.3 統計処理などで使われる数値演算処理専用アプリ向けのプログラミング言語です。
13 PHP 67.7 Webアプリを開発するときによく使われるスクリプト言語です。
14 Dart 68.1 Googleが開発したJavaScriptの代替を目指して作られたプログラミング言語です。
15 SQL 65.0 データベースを操作するためのプログラミング言語です。
16 Ruby 63.6 開発したのは日本人のまつもとゆきひろ氏、Ruby on Railsで使われます。
17 Rust 63.1 Mozillaが作成した並列処理が得意な言語。
18 Assembly 62.8 CPUの命令と1対1に対応する低水準言語。組み込み系でまだ残っているようです。
19 Kotlin 58.5 Javaの進化版です。
20 Julia 58.3 機械学習や数値計算処理などで注目されているプログラミング言語。
21 Scala 55.4 Javaと同じ環境で動作する新しい世代のプログラミング言語です。
22 Visual Basic 55.1 マイクロソフトが作った言語。.netを混ぜてもこんなものなんですね。
23 Shell 54.5 Linuxのコマンドラインで使うシェルで動作するスクリプト言語です。
24 Processing 50.6 お絵かきが得意
25 FORTRAN 45.2 昔の科学計算用プログラミング言語。今でも一定の需要があるようです。
26 Objective-C 44.4 Swift登場以前にApple製品向けだったプログラミング言語。
27 Lua 43.3 ゲーム開発で使われることの多いスクリプト言語。
28 Cuda 41.3 NVIDIA/GPUで使えますが使っている人を見たことはありません
29 Verilog 40.3 プログラムではなく半導体などの論理回路設計用の言語。
30 SAS 39.4 SAS Institute社製品で動作するプログラミング言語。
31 Ada 38.8 1983年から使われている古いオブジェクト指向な汎用プログラミング言語。
32 VHDL 38.5 プログラムではなく半導体などの論理回路設計用の言語。
33 Delphi 37.8 ObjectPascal。昔はもっと人気があったんですけどね。
34 Scheme 37.4 かつて人工知能の研究に使われたLISPの親戚で、今も人工知能の分野で利用されている。
35 Perl 37.2 かつては広く使われていた文字列処理に強いスクリプト言語。
36 D 36.6 C言語ベースのプログラミング言語。
37 LabView 35.8 LabViewは測定自動化のためのシステムで、その設定に使われる言語。
38 Haskell 35.4 関数型の代表選手。もっと人気があるものと・・・
39 Clojure 32.6 マルチスレッドが簡単になるそうですよ
40 Lisp 30.4 かつて人工知能の研究に使われたプログラミング言語。今でも需要はあるようです。
41 Elixir 29.2 並行処理の機能や関数型といった特徴を持つ比較的新しいプログラミング言語。
42 TCL 27.6 シンプルな文法のスクリプト言語。かつてTcl/Tkとして使われていた。
43 Apache Groovy 27.0 Javaから派生したプログラミング言語。
44 F# 22.2 マイクロソフトが開発した.NET向けのプログラミング言語。
45 COBOL 21.2 かつて標準だった事務処理用プログラミング言語。まだまだ現役です
46 ABAP 20.0 企業の情報システムを統合する用途などで使われるSAP用の専用言語
47 Erlang 18.3 並行処理が得意です
48 Forth 18.2 昔の言語によくある環境一体型
49 Prolog 16.3 かつて教育分野で使われていたプログラミング言語。
50 LadderLogic 14.3 プログラミングではなく特殊な半導体の設定用に使われる言語。
51 J 12.8 普及しなかったのにね
52 Ocaml 12.5 オブジェクト指向らくだ
53 CoffeeScript 8.6 JavaScriptベースのプログラミング言語。
54 Eiffel 8.5 オブジェクト指向プログラミング言語。
55 Racket 0.0 Schemeから派生したプログラミング言語。

未経験からWebエンジニアになりたい方におすすめ
のスクールはこちら

なぜプログラミング言語はたくさんあるのか

先ほど紹介したランキング対象となったプログラミング言語だけでも55種類ありますが、なぜ、こんなに数が多いのでしょうか?

プログラミング言語は言ってみれば「問題を解決する道具」ですが、ある領域ではうまく問題を解決できても(=その業務領域をうまくシステム化出来た)別の領域ではそれほどうまく問題を解決できない。という事があります。「帯に短しタスキに長し」というやつです。

昔からあるFORTRAN(25位)とCOBOL(45位)の例が分かりやすいでしょう。FORTRANは科学技術計算をうまくプログラミングできるように産み出されました。ですから、科学者が計算式を簡潔に記述できるように設計されています。

一方COBOLはプログラミングになじみの薄いエンジニアでもプログラミングが出来るようにと産み出された事務処理用のプログラミング言語です。そのため、英語に近い文法が採用されており、多くのエンジニアが扱えるようになりました。

それぞれの問題をうまく解決するために最適な道具を開発していたらこれだけのプログラミング言語が出来上がったという訳です。
未経験からWebエンジニアになりたい方におすすめ
のスクールはこちら

プログラミング言語の違い

プログラミング言語は沢山ありますがそれぞれどんなところが違うのでしょうか。

書き方

プログラミング言語毎に文法が異なりますが、いくつかのパターンに分類する事ができます。
一番多いパターンとしてはC言語やJavaのパターンでしょうか。

if(i < 10){
i = i + 1;
}

処理の固まりを{}で囲むパターンです。上記のコードはC言語かJavaなのか区別が付きませんね。

次のパターンとしては、RubyやBasicなどに見られるパターンでしょうか。

if i < 10
i = i + 1;
end

処理の終わりを「end」で示すパターンです。必ずしもendというキーワードという訳ではありません。

LISPのようにC言語やJavaになじみが深いエンジニアにとっては何を書いているのかチンプンカンプンの言語もありますが、このどちらかのパターンに当てはまることが多いでしょう。

プログラミング言語には一時的にデータを格納する変数がありますが、この変数には予めデータ型を指定する「静的型付け」と実行時にデータ型が決まる「動的型付け」の2種類があります。

「静的型付け」の方が代入時の型誤りをコンパライがチェックしてくれるためバグをうみにくいと言われていますが、この件については様々な言い分があり統一した答えはありません。

コンパイル

プログラミング言語にはコンパイルが必要な言語と必要がない言語との2種類あります。コンパイルとは人が理解しやすいプログラミング言語をコンピューターが理解できる機械語に予め変換する事ですが、そうする事で実行処理が早くなります。Javaのようにコンパイルは行うが機械語に変換せず中間言語に変換し、仮想マシンが中間言語を解釈して実行するというパターンもあります。

環境構築

プログラムを作成するのに必要な環境はプログラミング言語毎に異なります。コンパイルが必要のないプログラミング言語であればテキストエディタがあればプログラムの作成は可能です。効率よくプログラムを作成するためにIDE(統合開発環境)を活用する場合もあるでしょう。

また、古いプログラミング言語には開発環境や実行環境も含んだ環境を持っているケースもあります。
未経験からWebエンジニアになりたい方におすすめ
のスクールはこちら

プログラミング言語ができること

当たり前の話ですがプログラミング言語はプログラムを作るための言語です。何を目的にしてプログラムを作成するかによってどのような事ができるかは全く異なりますが、選択するプログラミング言語により得意な分野が異なるので、作成したいプログラムにマッチしたプログラミング言語を選択すると効率よくプログラムを作成できます。

Windowsで開発する場合、言語の処理系をWebページなどからインストールプログラムをダウンロードしてセットアップしましょう
未経験からWebエンジニアになりたい方におすすめ
のスクールはこちら

プログラミング言語の選び方


新しく学習するプログラミング言語を選択する場合、どのような点に気を付ければいいでしょうか。プログラミング言語を覚えるのが好きな人は単なる興味でいいでしょう。ただ、将来のスキルアップを目指しているのであれば、ニーズのあるプログラミング言語を選択したいですね。

その場合、IEEE Spectrumのラインキングは1つの基準になるでしょうし、雑誌やネット記事などで見られる話題から選択するのもいいでしょう。
また、2番目、3番目のプログラミング言語を選択するのであれば、今、習得しているプログラミング言語と同系でなく傾向が異なるプログラミング言語を選択すれば幅が広がります。
未経験からWebエンジニアになりたい方におすすめ
のスクールはこちら

まとめ


今回はプログラミング言語の違いをテーマに人気ランキングからそれぞれの違いなどをまとめてみました。本当に沢山のプログラミング言語がありますね。言語にはそれぞれ思想、概念があり、それらを学ぶだけでもスキルアップにつながるため今回出てきたプログラミング言語の中から気になるものがあればチャレンジしてみてください。

なおこのサイトを運営しているポテパンでは、未経験からWebエンジニアを目指す方に業務で使えるスキルを教えるプログラミングスクール、ポテパンキャンプを運営しています。Webシステム構築に使われるプログラミング言語はいろいろありますが、Ruby on Railsに興味のある方はこちらもチェックしてください。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。