こんにちは!
フリーランスエンジニアのかたやまです。
今回は、2021年プログラミング言語ランキングのTOP10をすべて解説します。
ランキングは、TIOBEという会社が毎月発表している、プログラミング言語ランキングを使います。非常に有名なランキングなので、知っている人も多いのではないでしょうか?
※ランキングはこちら → https://www.tiobe.com/tiobe-index/
TIOBEって何?という方に簡単に解説します。TIOBEは、オランダのTIOBE Softwareというソフトウェアの品質評価を行う会社です。独自の評価技術で作られたプログラミング言語の人気ランキングは、世界で信用されています。
今回紹介するのは、2021年5月のランキングです。さっそく見ていきましょう!
2021年5月 プログラミング言語ランキング
まず、初めにプログラミング言語ランキングのTOP10を発表します!
ランキング | プログラミング言語 |
1 | C |
2 | Python |
3 | Java |
4 | C ++ |
5 | C# |
6 | Visual Basic |
7 | JavaScript |
8 | アセンブリ言語 |
9 | PHP |
10 | SQL |
気になる言語はありましたか?これから1つずつ解説していくので、気になった言語だけでも確認してみて下さい。
第1位 C
第1位は、「C」です。
C言語は、1972年に開発された歴史あるプログラミング言語です。40年以上使われ続けてきた歴史があるので、世界に存在する多くのシステムがC言語で作られています。
特徴1|「最速」であること
C言語の最大の特徴は「最速」であることです。最速とは、同じ処理を異なる言語で書いたときに、C言語の処理時間が一番短いということです。この特徴を活かして、速さが求められるOS, ロボット, カーナビなどを作るために使われることが多いです。有名な例として「MacOS X」はC言語で作られています。
特徴2|プログラミングが難しい
C言語の開発は難易度が高いです。C言語を習得しておけば、他の言語は楽に身に付けることができます。C言語は、求人数も豊富なので、最新の技術を追い求めるのが苦手な方は、歴史のあるC言語を習得しておくと良いかもしれません。
第2位 Python
第2位は、「Python」です。
Pythonは、今のもっとも注目されているプログラミング言語です。人材サービス会社のパーソルキャリアが発表した「ITエンジニアが2021年に学びたいプログラミング言語ランキング」では、断トツの1位になっています。
特徴1|専門的なライブラリが豊富にある
Pythonの最大の特徴は、「専門的なライブラリが豊富にある」ことです。ライブラリとは、一言で表すと「便利な部品」です。例えば、「ファイルを読み込む」という処理を行う場合、C言語の場合は何行にも渡ってコードを書かなければいけません。一方、Pythonの場合は「ファイルを読み込む」という部品がすでに用意されているため、部品を使うためのコードを1行書くだけで終わりです。このように、Pythonにはさまざまな部品が用意されているため、少ないコードで簡潔にプログラムを書けることがでます。初心者に優しいプログラミング言語です。
特徴2|あらゆる有名サービスで使われている
Pythonは、さまざまな有名サービスで使われています。具体的には、
- YouTube
- Dropbox
- Gmail
- Google Maps
世界を代表するサービスの数々です。魅力的なWebサービスを作りたい!という方にオススメのプログラミング言語です。
第3位 Java
第3位は、「Java」です。
Javaは、世界的でもっとも使用されている言語です。今回は、3位ですが2000年以降のランキングで、80%以上はJavaが1位です。それぐらい、圧倒的な人気があります。
特徴1|求められるスキル No.1
Javaの最大の特徴は、「求められるスキルで圧倒的No.1」であることです。実際にもっとも求人数の多いプログラミング言語は、Javaです。求人が多い理由は、「大規模開発」の開発言語に選ばれることが多いからです。例えば、私が過去に経験したプロジェクトでは、Java開発者が3,000人ほど集まって開発を行うプロジェクトがありました。このように、大規模なシステムはJavaで作られることが多いので、Javaができるというだけで、仕事に困ることはほとんどありません。
特徴2|開発環境を作るのが大変
Javaの弱点は、開発環境を用意するのが大変という点です。独学で学ぼうとしても、準備だけで何日もかかってしまいます。実際にJavaのプロジェクトに参加して、数日は準備期間が設けられるほどです。Javaを本気で学びたい方は避けては通れない道なので、一度体験しておくことをおススメします。
第4位 C ++
第4位は、「C ++」です。
C ++の読み方は、「しーぷらぷら」です。C ++は、C言語を元に作られた言語なので、C言語に似ている点が多くあります。C言語から改良されて、より効率よくプログラミングできるように作られています。
特徴1|処理速度が速い
最速のC言語を元に作られただけあって、C ++も処理速度が圧倒的に早いです。処理速度が速いというのは、システムにとってメリットしかないので、C言語やC ++が上位にランクインするのは納得です。
特徴2|C言語より難易度が優しい
C ++は、C言語を改良したものなので、比較的優しく身に付けることができます。まずは、C ++を身に付けて、C言語を身に付けるという順番がおススメです。C++ とC言語を両方学ぶ目的は、C言語で作られたシステムをC ++で作り直すというプロジェクトが多くあるからです。このようなプロジェクトで即戦力になるためにも、セットで身に付けておくと、より活躍できる人材になることができます。
第5位 C#
第5位は、「C#」です。
C#は、Microsoftが作ったプログラミング言語です。個人的には使いやすさNo.1で非常に気に入っている言語です。Microsoftが展開するサービスと相性が良いので、Microsoft関連の開発に興味がある人は要チェックのプログラミング言語です。
特徴1|Javaと似ている
C#の特徴は、Javaと似ていることです。C#とJavaを比較すると、若干C#の方が易しいです。また、開発環境の準備も簡単に行うことができます。Javaの解説で説明したとおり、Javaは開発準備が大変なので、C#から始めてみると良いと思います。
私は、過去にプロジェクトの採用面接で、「C#の経験があるならOK!」と言われ、Javaが未経験の状態でもJavaの大型プロジェクトのメンバーに選ばれました。それぐらい「C#ができるならJavaもできる」という考えは一般的になっています。
特徴2|Unityの公式言語
ゲーム開発に興味がある人は要チェックです。C#はUnityの公式言語となっています。Unityというのは、ゲーム・AR・VRを作ることができる開発ソフトです。
有名なゲームでは、「ポケモンGO」「スーパーマリオラン」「白猫プロジェクト」は全て、UnityとC#の組み合わせで作られています。ゲーム開発に興味が人は要チェックのプログラミング言語です。
第6位 Visual Basic
第6位は、「Visual Basic」です。
Visual Basicも、Microsoftが作ったプログラミング言語です。Visual Basicは、ビル・ゲイツが手掛けたことで有名です。歴史ある言語で、使いやすさに優れているため、長く愛されているプログラミング言語です。「Visual Basic」を省略して、「VB」と省略されることも多くあります。
特徴1|簡単な処理が得意
Visual Basicは、とにかくシンプルでプログラミングが簡単です。簡単であるが故に、簡単な処理しか作れないというのが特徴です。ちょっとしたツールや画面付きのパソコン用アプリを作るにはピッタリのプログラミング言語です。
特徴2|RADの代表言語
RADとは「Rapid Application Development」の略で高速アプリケーション開発という意味です。昔の時代では、長年かけて大きなシステムを作るということが一般的でした。しかし、Visual Basicの登場によって、プログラミングが一気に身近で手軽なものへと変化しました。さすが、ビル・ゲイツです。
第7位 JavaScript
第7位は、「JavaScript」です。
JavaScriptは、これまでの1位~6位とは、種類が大きくことなる言語です。「JavaScript」と「Java」は名前は似ていても全く別物なので、区別しておきましょう。
特徴1|Webサイトの動きを付ける役割
JavaScriptは、Webサイトの画面に画面に動きを付ける役割があります。言葉では、分かりづらいので、JavaScriptでタイマーを作ってみました!
今日が終わるまで
あと 時間 分 秒
このように、カウントダウンタイマーを作って画面に動きを加えることができます。他にも、「画像がスライドして切り替わる」「Google Mapのようにクリックしたところにピンが立てられえる」といったように、ページを移動せずに画面を変化させることができます。
特徴2|クライアントサイドの言語
JavaScriptは、クライアントサイドの言語です。クライアントサイド言語を一言でいうと、「画面を作るのにかかせないプログラミング言語」です。JavaScriptやHTML、CSSは代表的なクライアントサイドの言語です。
クライアントという考え方について、より知っておきたいという方は、以下の記事も確認してみてください。
【IT用語】クライアントとサーバーとは?現役エンジニアが初心者向けに簡単解説!
第8位 アセンブリ言語
第8位は、「アセンブリ言語」です。
アセンブリ言語は、なんと1940年代から存在していると言われている言語です。あまりに古すぎて、新しく学ぼうとする人はほとんどいません。それにもかかわらず、8位にランクインしている理由は、プログラミング言語の歴史が長く、アセンブリ言語で作られたシステムが現代にも多く残っていることが示唆されます。
特徴1|機械語にもっとも近い存在
アセンブリ言語は、機械語にもっとも近い存在です。機械語とは、コンピュータの理解できる「0」と「1」だけで書かれたものです。機械語に近いため、たとえエンジニアでも、アセンブリ言語で書かれたソースコードを見て、すぐに理解できる人はほとんどいません。最新の分かりやすい言語と比べると、どうしても難解になってしまします。
特徴2|少し勉強するだけで貴重な人材になれる
アセンブリ言語は、人材不足と言われています。若い人は、アセンブリ言語のような古い言語ではなく、最新の言語を学ぶからです。逆を言えば、アセンブリ言語を少し勉強するだけで、貴重な人材になることができます。
私がサラリーマンのとき「アセンブリ言語ができる人が見つからない…」と上司が嘆いているのを何度も見ました。アセンブリ言語を少し学んでおくだけで、救世主になれるかもしれません。
第9位 PHP
第9位は、「PHP」です。
PHPは、1990年代に作られた言語です。Webサービスに向いている言語なので、インターネットの広がりとともに、人気が出てきました。比較的簡単なので、初めてプログラミングをやる人にもおすすめです。
特徴1|動的コンテンツの作成に最適
PHPは、動的コンテンツの作成に向いています。動的なコンテンツとは、同じURLでも、人によって表示される内容を変えることです。例えば、ECサイトの「カートの表示」で考えてみましょう。当然ですが、ショッピング途中のカートの中身は、人によって異なります。PHPを使えば、人によってサイトの表示を変えることができます。
特徴2|有名Webサービスで使われている
PHPは、さまざまな有名サービスで使われています。具体的には、
- WordPress
- Yahoo!
- Wikipedia
- Slack
- ぐるなび
facebookもPHPで作られれています。この事実を知ったあとに、facebookの創業者 マーク・ザッカーバーグを描いた映画「ソーシャル・ネットワーク」見ると、今すぐPHPを勉強したくなってしまいます (笑)
第10位 SQL
第10位は、「SQL」です。
SQLは、データ管理に特化したプログラミング言語です。その特徴から、データベース言語と呼ばれることもあります。
特徴1|データベースを操作する
SQLの役割は、データベースを操作することです。データベースとは、ある目的をもったデータの集まりです。ある目的とは、商品情報や利用者などです。例えば、ECサイトを運営する場合、販売する商品情報を整理して、管理する必要があります。この整理されたデータのことをデータベースと呼びます。身近な例でいえば、携帯に入っている連絡先アプリも、連絡先のデータを整理したデータベースと呼ぶことができます。
特徴2|基本はたった4種類
SQLの役割は、基本的に4種類のみです。データベースの操作しか行わないので、やることも限られています。SQLの9割以上が以下の4つの目的のために使用されます。
- データの追加
- データの検索
- データの更新
- データの削除
少しイメージしずらいと思うので、具体的な例で考えてみましょう。あなたが、初めて使うサービスに会員登録した場合、まず会員用のデータベースに「1.データの追加」が行われます。翌日、会員サイトにログインするときに、ログインIDとパスワードが登録したものと同じかどうか「2.データの検索」を行って確認します。1ヵ月後、引越をして住所変更の手続きを行ったら「3.データの更新」が行われます。1年後、サービスを使用しなくなり、退会すると「4.データの削除」が行われます。
このように、基本的には4つの処理がメインなので、学びやすい言語と言えます。
まとめ
今回の「2021年プログラミング言語ランキングのTOP10解説」は以上です。
それぞれの言語に特徴があり、どのプログラミング言語を勉強するか迷っている方は、ヒントになったのではないでしょうか?このランキングは毎月更新されるので、気になる方はチェックしてみてください。ランキングが大きく変わったタイミングで、もう一度解説してみようと思います。
では、また次回!