これからプログラミングを学習したい方で「どの言語を学習すれば良いのかわからない」「どの言語で何ができるのかわからない」という方向けに、言語別にできること、各言語の難易度とおすすめポイントをまとめました。
初めて学ぶプログラミング言語を選ぶ方法として参考になれば幸いです。
この記事の目次
- 1 プログラミング言語人気ランキング
- 2 JavaScript: Web系のフロントエンド言語として人気!初心者から上級者まで学んで損なし。フロントエンドを学びたい人必須。
- 3 Python: 書きやすい文法で人気!上級者になるとAI・機械学習・データ分析ができることからデータサイエンティストを目指す人が多い
- 4 Java:人気1位!サイズの大きなプロジェクトやシステム開発したい人向け
- 5 PHP: WordPressなどWeb系の制作に向いている言語で求人数も多い
- 6 C++: 高速処理が可能。難解で難易度高めながらも需要が高い(シープラスプラス、またはシープラプラ)
- 7 C#:VR(バーチャルリアリティ)など3Dゲームの制作ができる
- 8 番外編:CSS(カスケーディング・スタイル・シート)はWebの知識の基本。JavaScriptやPHPを学ぶ前に必須のスタイルシート言語
- 9 番外編:Swift: AppleのiOSに対応したアプリを作りたい人向け
プログラミング言語人気ランキング
どこから統計をとるかによってプログラミング言語の人気ランキングも異なるのですが、安定した人気となっているのが、Java、C、C++、Python、C#、JavaScript、PHPなどです。
この中から初心者が学びやすい言語を中心にご紹介します。
JavaScript: Web系のフロントエンド言語として人気!初心者から上級者まで学んで損なし。フロントエンドを学びたい人必須。
html/CSSなどの静的Webサイトの成り立ちや作り方を学んだら、チャレンジしたいのがJavaScript。ここ数年で、JavaScriptはPythonと共に、人気度が高まっています。
元々はWebサイトに動きをつける機能を足せることで人気だったJavaScriptでしたが、最近、SPA(シングルページアプリケーション)という、1ページのWebアプリケーションの流行に伴い、さらに人気が高まっています。
中でもFacebookが開発したReact(またはReact.js)というUI(ユーザーインターフェース)構築のためのJavaScriptライブラリが人気となっています。
Vue.jsやAngularJSといった言葉を聞いたことがある、という方もいらっしゃると思いますが、これらも全てJavaScriptのライブラリです。
フロントエンドといって、ユーザーから見える部分のWeb開発に最適です。
Python: 書きやすい文法で人気!上級者になるとAI・機械学習・データ分析ができることからデータサイエンティストを目指す人が多い
Pythonは文法もシンプルでわかりやすく、今急速に人気が高まっています。将来的には一番人気になるかもしれないと言われています。
というのも、Pythonを極めればAIや機械学習、そしてデータ分析などができるからです。これから発展しそうな分野と言われているAI・機械学習・ビッグデータデータ分析などにチャレンジしたい方に最適な言語です。
Pythonは、2020年春からの「基本情報技術者」試験にも問題が出題される言語となりましたので、今後さらに注目が高まりそうです。
Pythonは文法はシンプルで書きやすいので初心者にも学びやすいものの、実際にAI・機械学習・データ分析まで行いたい場合は、数学の知識と統計学の知識が必要となります。
Java:人気1位!サイズの大きなプロジェクトやシステム開発したい人向け
JavaはWebシステム・サーバーインフラ・Androidアプリなどに適した言語で、安定した人気があります。ここ15年ほどは不動の1位を保っています。
OS(オペレーションシステム)や機器を選ばないのであらゆる環境で動くという点でも人気です。
個人で小さなプロジェクトを作成することもできますが、主に銀行のシステム・乗用車の組込みシステム、マイクロ制御装置など社会インフラに使用することが多い言語なので、企業での大きなシステム開発に向いています。
人気ランキングでもほぼ変動がなく安定した人気と需要がありますのが、学習の難易度が高めですので、将来的にシステム開発をしたい、など本格的に学びたい人におすすめです。
PHP: WordPressなどWeb系の制作に向いている言語で求人数も多い
このブログは「WordPress」というオープンソースのCMS(Contents Management System)で作られています。
WordPressは、PHPという言語で作成されており、手軽に使えることからユーザー人気がとても高いです。
WordPressのテーマの作成やカスタマイズを行う場合など、Web系の開発を行う際によく使われるのがPHPです。
日本国内でも求人が多いことがメリットです。デメリットはWeb系の制作に特化しているため、Web系以外の制作をしたいなら他の言語も学ぶ必要があるということです。
また、世界的には年を経るごとに、少しずつ人気度が下がっており、最初に学ぶ言語としては難易度が低いので取り組みやすいものの、JavaScriptやPythonに人気度で負けつつあるというのが現状です。
C++: 高速処理が可能。難解で難易度高めながらも需要が高い(シープラスプラス、またはシープラプラ)
C++は1983年に開発された歴史ある言語であることから、安定した人気があるのですが、最初に学ぶ言語としては難解だと言われています。
「学校で最初に習った言語がC++で、意味がわからなくなり挫折してしまった」という声も多く聞きます。
一方で、WindowsやLinuxなどのOS(オペレーションシステム)にも使われており、実行速度が速いので証券取引システムなど、リアルタイムでの処理が求められるシステム開発に向いています。また、ゲーム開発なども行われています。
C++は、現在もこれからも需要が高い言語なので、PythonやJavaScriptなどで基本文法やプロジェクト制作を行ってから取り組むのもおすすめだと思います。
C#:VR(バーチャルリアリティ)など3Dゲームの制作ができる
今急速に進んでいるのがVR(Virtual Reality)の活用です。VRを活用したゲームに活用できる言語です。
C#はMicrosoftがCを発展させて開発した言語で、Unityというゲーム開発環境で使うことができる言語です。また、Windowsで動くアプリ制作にも使うことができます。
ゲームやアプリを開発したい人に向いているのですが、仕事の幅は広くないので、WindowsアプリやUnityでゲーム開発、VRを使った3Dゲームを作りたい、と目的が特化している人向けだと思います。
番外編:CSS(カスケーディング・スタイル・シート)はWebの知識の基本。JavaScriptやPHPを学ぶ前に必須のスタイルシート言語
JavaScriptの項目でも少し触れたのですが、Web系の言語(JavaScriptやPHP)を学ぶ前に必須となっているのがhtmlとCSSの知識です。
htmlでまずはWebサイトなどの基礎の形を作ります。文字情報や画像情報を構造化するのですが、この時点では「デザイン」と呼べる状態ではありません。
次にCSS(Cascading Style Sheets)を使って、Webサイトを装飾していきます。
例えば、Webサイトを見た時に、背景に色がついていたり、ブロックごとにサイズがあったりして表示するときにデザインが施されていてレイアウトが整っています。それがCSSです。
JavaScriptやPHP以外の言語を学ぶ場合も、Webサイトの成り立ちの基礎知識として、htmlとCSSは必ず学習しておきたい言語です。
番外編:Swift: AppleのiOSに対応したアプリを作りたい人向け
先ほどご紹介したグラフには入っていないのですが、書店でよくSwift開発本を見かけるのでご紹介します。
AppleのiOSに対応したアプリを作りたい時に使うのがSwiftです。
一時人気が急速に高まったのですが、用途がiPhoneなどiOSアプリ限定ということもあって、2つ目または3つ目の言語として学ぶことがおすすめです。
アプリはダウンロードしてすぐ使えるというメリットがある一方で、ダウンロードしたアプリの80%はアンインストールされる、というデータもあります。
最初に学ぶ言語として選ぶ場合は、どんなアプリを作りたいか目的が明確にしておくことが大切だと思います。