プログラミング言語って何があるの?言語の種類と特徴を学びましょう!

プログラミングの言語ってほんとに多いですよね。

プログラミングの勉強をこれから始めるのであれば、
「やってて良かった」
そう思えるプログラミング言語を勉強していきたいですよね。

プログラミングの勉強を始めるにあたって、以下のような疑問を抱く方が多いので、そんな疑問を解消するための記事を書きました。

  • プログラミング言語にはどんな種類があるの?
  • それぞれの言語の特徴は?
  • どんな言語が人気なの?
  • プログラミングを始めるならどの言語がおすすめ?

漠然とプログラミングを学びたいと思っていても、結局どの言語を勉強すればいいのかよく分かりませんよね。

これからプログラミングの勉強を頑張るぞ!
そういった素晴らしい熱意が決して無駄にならないよう、少しでも背中を後押し出来る記事になれば幸いです!

人気で見るプログラミング言語の種類

以下は、人気があるプログラミング言語のランキングです。
このランキングは、PYPLというサイトで確認することが出来ます。

ひと昔前までは、Javaが圧倒的な人気を誇っていましたが、近年はPythonの人気が高まっていますね。

他の言語はシェア率を落としていたり、プラスになっていても微増なのに対して、Pythonのシェア率・上昇率は頭一つ抜けたものがあります。

この他にも多くのプログラミング言語が存在しますが、トップ10入りしている言語をマスターしておけば、まず間違いないでしょう!

それでは、トレンドのトップ10に入ったこれらのプログラミング言語をランキング順に見ていきたいと思います!

プログラミング言語の特徴

1位:Python

機械学習を得意とするプログラミング言語です。
近年話題になっているAIなんかに使われている技術ですね。
「機械学習といえばPython」と言われるぐらい、機械学習の分野では人気を博しています。

機械学習だけじゃなく、Webアプリケーションやデスクトップアプリケーション、さらにはAndroid限定になりますがスマホアプリも作ることが出来るので、非常に汎用性の高いプログラミング言語です。

ただ、Andoroidアプリは後述のJavaを用いて作ることがほとんどですので、スマホアプリを作っていきたいという方は、そちらを選んだ方が良いでしょう。

特徴
  • 機械学習で人気のプログラミング言語
  • 文法がシンプル
  • 可読性が高い(初心者でも読みやすい!)
  • ライブラリが豊富
分野
  • AI(機械学習・ディープラーニング)
  • Webアプリケーション
  • デスクトップアプリケーション
  • スマホアプリケーション(Andoroid)
  • 組み込み開発

2位:Java

Javaは1996年にSunMicrosoft社(現Oracle社)が開発したプログラミング言語です。

Javaは作れるアプリケーションの幅が広く、WebアプリケーションからAndroid向けスマホアプリ、さらに自治体や金融機関などの大規模システムでも使用されています。

さらにJavaの人気のひとつとして、マルチプラットフォームに対応していることが挙げられます。
WindowsやMac、各種サーバなどOSに依存せずにアプリケーションを動かすことが出来るので、世の中のシステム案件ではJavaの需要が高いのが特徴です。

これだけ幅が広く需要も高いので、Javaは参考になるWebサイトや入門書が豊富に存在します。
その点では、初心者の方も勉強のスタートを切りやすいプログラミン言語ですが、実務レベルの技術を身につけるとなると難易度は高めの言語となります。

特徴
  • 作れるアプリケーションの幅が広い
  • オブジェクト指向を身につけられる
  • 参考になる入門書やWebサイトが豊富に揃っている
  • 国内の需要が高いので、就職や転職に有利
  • 習得難易度は高め
分野
  • Webアプリケーション
  • デスクトップアプリケーション
  • スマホアプリケーション(Android)
  • 大規模システム

3位:JavaScript

JavaScriptは1995年にNetscape社によって開発されたプログラミング言語です。

発表当初は「LiveScript」という名前でリリースされましたが、Javaの爆発的な人気に便乗して「JavaScript」という名前に改名して現在に至ります。
そのため、名前に”Java”と付きますが、前述のJavaとは全く別物なのでご注意ください。

JavaScriptはブラウザ上で動くプログラミング言語です。
Javaはブラウザから送られるリクエストを受け取って処理するのに対して、JavaScriptはブラウザからリクエストを送ったりする側の処理となります。
(この場合、JavaScriptをフロントサイド、Java側をサーバサイトといったりします)

このようにJavaScriptはブラウザ(画面側)を制御するプログラミング言語であり、Webページに動きをつけたりすることも行います。

モダンなWebサイトであれば、マウスで選択した部分の色が変わったり、ページを開くとアニメーションが表示されたり、ボタンを押すとポップアップが開いたり、シンプルでありながらユーザを飽きさせない動きが取り入れられています。
この動きの部分をJavaScriptが担当しています。

そのため、近年のWebアプリケーション開発では、JavaScriptのスキルは必須といっても過言ではないほど重要なプログラミング言語となります。

特徴
  • ブラウザ上で動くプログラミング言語
  • Webページに動きをつけることが出来る
  • 手軽に始められる(ブラウザとテキストエディタがあれば動く)
  • Webアプリケーション開発には必須のスキル
分野
  • Webアプリケーション
  • ゲーム開発

4位:C#

C#は2002年にMicrosoft社が開発したプログラミング言語です。

Microsoft社が提供しているプログラミング言語ということで、Windowsとの相性が良く、Windows向けのアプリケーション開発では鉄板のプログラミング言語となります。
ただ、近年ではWindows向けだけにとどまらず、iOS向けのアプリケーションも開発可能になり、国内の需要は高い傾向にあります。

また、ゲーム開発で代表される「Unity」で使用されるプログラミング言語であり、スマホゲームなどの需要が高まっている近年では、ますます人気の高いプログラミング言語です。

さらに、UnityではVR開発を行うことも出来るので、今後5Gが普及していく中でVRの需要も高まることが予想されるので、C#の需要もさらに伸びていく可能性があります。

そういった点で、C#はまだまだ将来性のある言語といえますので、これからプログラミングを学ぶ上ではC#を選択肢として検討するのもありだと思います。

特徴
  • Microsoftが開発したプログラミング言語
  • オブジェクト指向を身につけられる
  • Windows向けのデスクトップアプリケーション開発では鉄板
  • Unityで使用される言語なので、ゲーム開発やVR開発にも使用される
分野
  • Webアプリケーション
  • デスクトップアプリケーション
  • スマホアプリケーション(iOS)
  • ゲーム開発
  • VR開発

5位:C / C++

C言語は1972年にアメリカの通信研究所が開発したプログラミング言語です。
そのC言語をオブジェクト指向のプログラミング言語に拡張したのがC++(シープラスプラス)となります。

C++はC言語と互換性があり、C言語で書いたコードをC++に移行することも出来るぐらいですので、C言語を学んだことがある方は特に抵抗なくC++を学ぶことが出来ます。

C++はWebアプリケーションやAndroid・iOS向けスマホアプリ、さらにはゲーム開発などで使用されるプログラミング言語ですので、マスターすると幅広い分野のアプリケーションを作ることが出来ます。

とはいえ、Webアプリケーションは「Python」や「PHP(後述)」、AndroidアプリやiOSアプリは「Java」や「Swift(後述)」、ゲーム開発は「C#」など、それぞれの分野で人気のあるプログラミング言語が名を連ねていますので、C++は縁の下の力持ちのような存在といえるでしょう。

特徴
  • C言語をベースに改良されたのがC++
  • 処理速度が速い
  • 幅広い分野の開発が可能
  • オブジェクト指向を身につけられる
分野
  • Webアプリケーション
  • スマホアプリケーション(Android / iOS)
  • ゲーム開発
  • OS開発
  • 組み込み開発

6位:PHP

PHPは1994年にカナダのプログラマーによって開発されたC言語をベースとしたプログラミング言語です。
そこから改良を重ね、バージョンアップを繰り返して現在のPHPに至ります。

PHPはWebアプリケーションに特化したサーバサイドのプログラミング言語で、国内のWeb関連の案件でも人気が高い傾向にあります。

PHPはプログラミングの基本が理解出来れば、Javaなどの幅広い分野に使用できるプログラミング言語に比べると、比較的簡単に使っていくことが出来ます。

Webアプリケーションに特化したプログラミング言語なので、構文がシンプルで可読性が高いということもあり、初心者にも扱いやすいプログラミング言語となります。

また、PHPをより扱いやすくするフレームワークとして、Cake PHPやLaravelなど人気が高いフレームワークも存在しています。

これらを使うことで、高度な処理を少ないコード量で記述できる点も魅力の一つです。

特徴
  • Webアプリケーションに特化したサーバサイドのプログラミング言語
  • 国内の需要が高いため、就職や転職に有利
  • 人気の高いフレームワークが存在
  • 初心者向けのプログラミング言語
分野
  • Webアプリケーション

7位:R

R言語は機械学習やデータ解析に特化したプログラミング言語です。

開発された当初は研究や学術の分野で主に使われていましたが、AIの普及によって機械学習やデータ解析の人気が高まった近年では、民間企業でも多く取り入れられています。

機械学習やデータ解析の分野では、人気の高いPythonに負けないほど人気の高い言語となります。

では、PythonとR言語は何が違うの?という話になりますが、違いは「汎用性の高さ」です。

R言語は機械学習やデータ解析に特化している分、Webアプリケーションの開発などは出来ません。

その点、Pythonは機械学習の他にもWebアプリケーションやデスクトップアプリケーションも作ることが出来ます。

なので、今後の目標として機械学習エンジニアになりたい、データサイエンティストになりたいという方におすすめのプログラミング言語となります。

特徴
  • AIの登場により人気が高まってきているプログラミング言語
  • 機械学習・データ解析に特化している
  • これらの分野においてはPythonよりもおすすめ
  • ただし、Webアプリケーションなどの開発は出来ない
分野
  • AI(機械学習)
  • マーケティング(データ解析)

8位:Objective-C

Objective-CはiOSアプリの開発言語として知られるプログラミング言語です。
その名が示す通り、C言語をベースとしてオブジェクト指向が取り入れられています。

そのため、Objective-Cを使いこなすには、C言語の知識とオブジェクト指向の考え方をマスターする必要があります。

かつては、スマホアプリを開発するとなると、AndoroidアプリはJava、iOSアプリはObjective-Cが選択される時代でした。

しかし、後述するSwiftという言語の登場によって世間ではSwift人気が高まり、今ではObjective-CからSwiftへの移行が進んでいます。

現在、Objective-Cの使い道としては、古くからObjective-Cで作られたiOSアプリの改修や保守といったケースがほとんどだと思います。

これからiOSアプリを作るためにプログラミングを学びたいという方は、Objective-CではなくSwiftを学ぶことをおすすめします。

Objective-CとSwiftの比較については、以下の記事に詳しく載っていますので、興味のある方は一度ご覧ください。

特徴
  • iOSアプリの開発で使用されるプログラミング言語
  • C言語の知識とオブジェクト指向の考え方が必要
  • Swiftが登場したことにより人気は下がっている
分野
  • スマホアプリケーション(iOS)

9位:Swift

SwiftはApple社が2014年に発表したオープンソースのプログラミング言語です。

Objective-Cのところでも軽く説明した通り、Objective-Cの後継のプログラミング言語で、主にiOSアプリの開発で使われます。
ただし、Objective-Cとは違って、iOSアプリだけでなくWebアプリケーションも作ることが出来るのもSwiftの魅力の一つです。

スマホとして人気が高いiPhoneですが、iOSアプリを作ろうとすると他の言語では中々難しいところがあります。
そのため、近年ではiOSアプリを作るのであればSwift一択といっても過言ではほど、Swiftの人気は年々高まっています。

かつて、Objective-Cは独特な書き方により、学習コストが高いなどの問題点を抱えていました。
その問題点を解消するために開発されたのがSwiftであり、他のプログラミング言語の良いところを取り入れたことにより、コードの可読性や開発の敷居が下がっています。
そのため、他のプログラミング言語を学んだ人でも低い学習コストで取り組むことが可能です。

特徴
  • Apple社がObjective-Cの後継として開発したプログラミング言語
  • iOSアプリだけでなく、Webアプリケーションも作ることが出来る
  • 他のプログラミング言語の書き方と通じるところがあるため、学習コストが下がっている
分野
  • スマホアプリケーション(iOS)
  • Webアプリケーション

10位:TypeScript

TypeScriptはMicrosoft社が開発したプログラミング言語です。
2014年頃に発表されたプログラミング言語なので、比較的あたらしい言語になります。

基本的にはJavaScriptをベースに作られているので、Webアプリケーションを作る際に使われます。

JavaScriptをベースとして、JavaScriptの欠点を補うように開発されているので、Webアプリケーション業界では大きく注目されており、将来性のあるプログラミング言語です。

TypeScriptは以下のようにJavaScriptと互換性があります。

  • TypeScriptのコードをコンパイルすると内部ではJavaScriptに変換される
  • JavaScriptのライブラリを使用できる
  • JavaScriptのコードを移植出来る

このように、JavaScriptと互換性があることや、JavaScriptよりも少ないコード量で記述出来ることにより、TypeScriptの人気はどんどん上がっています。

モダンなWebアプリケーションの場合、JavaScriptは必須といっても過言ではないので、TypeScriptの人気がさらに高まると、TypeScriptへの移行が増えてくることが予想されます。

特徴
  • JavaScriptをベースに開発されたプログラミング言語
  • JavaScriptとの互換性がある
  • JavaScriptの欠点を補っているため、Web業界での注目度が高い
分野
  • Webアプリケーション

まとめ

いかがだったでしょうか?

今回はプログラミング言語の種類や特徴について、ざっくりと説明させていただきました。

プログラミング言語が溢れる昨今では、自分の目的にあったプログラミング言語を選択することが重要です。

私もエンジニアとして仕事していますが、新しい言語に取り組む時は苦労の連続です。
独学と実務では経験値に大きな差が出ることも肌で感じてます。

独学が厳しいようであれば、プログラミングスクールに通うのも一つの手ですので、
趣味ではなくフリーランスとして早く活動したいという方は、そちらも視野に入れて活動することをおすすめします!

コメント