【5つの基準で選ぶ】プログラミング言語はこれがおすすめ!
AIやIoTなどの言葉が流行するにつれ、勉強を始める人が増えている「プログラミング」。
2020年度からは小学校でのプログラミング教育が必修となるなど、年齢関係なく“ITに関する知識が持っていて当たり前”な時代が来ていますよね。
しかし、“プログラミングを始めてみよう!”と思っても、まずぶち当たるのが「どの言語を選べばいいのか?」という疑問。
「簡単な言語だとちゃんとしたスキルが身に付かなさそうだし、いきなり難しい言語を始めると挫折しそうだし…」と、迷っている人もいるかと思います。
そこで今回は、初心者が学ぶべきプログラミング言語を“目的別”にご紹介していきます!
プログラミング言語ってどのくらいあるの?
マイナーな言語も合わせると、現在200種類以上あると言われているよ。
ただ、そのうち多くの人に使われているのは10分の1くらいだけどね。
へ~結構多いんだね!
ってことは、プログラミング言語の選択は「英語か中国語、韓国語のどれを学ぶか?」と同じような感じ?
その通り!
ここではおすすめのプログラミング言語を紹介していくけど、“これが正解!”っていう言語はないよ。
まぁ、需要の少なすぎる言語は避けた方が良いけどね。
自分の目的に合ったプログラミング言語を選ぶことが大事さ!
プログラミング言語を選ぶ判断基準とは?
ではさっそく、プログラミング言語を選ぶ判断基準をご紹介していきます。
様々な目的があるとは思いますが、ここでは以下の5つに絞りますね。
- 人気度(需要)
- 学びやすさ(難易度)
- 年収
- 将来性
- 何ができるか?
私は難しいと逃げ出してしまいそうだから、やさしい言語がいいな…
それなら判断軸は「難易度」だね!
あ、でもホームページとかも作れるようになりたいかも!
じゃあ「難易度」と「何ができるか」という2つの軸で選んでいこう。
このように、複数の判断軸がある場合は、あえてひとつの軸に絞らなくても大丈夫。
最終的にどちらも学べばいいだけなので、気楽に選んでいこう。
へ~い!
1. 人気度(需要)で選ぶ
「よく分からないから、とりあえず人気の言語を学びたい!」という人が選ぶべき言語は、JavaScript・Javaです。
※JavaScriptとJavaは別々の言語なので、注意です。
JavaScript
どんな特徴があるの?
- 世界中の開発者が使用する最も人気の高い言語
- HTML/CSSで作られたWebサイトに動きを付けることができる
(ポップアップやスライドショー、アニメーションなど) - ゲームやスマホアプリの制作も可能
- Google mapもJavaScriptの技術を中心に使用
えっ、こんなに色々?
そう、JavaScriptってできることが、たくさーーーんあるんだ。
主に「ブラウザ上で動きを付ける時に動かす言語」っていう意味合いが強いんだけど、今や色々できちゃうからひとことでは言い表せないね。
万能な言語って感じ?
最初はそんなイメージでいいと思うよ!
もちろん、万能だからといって何でもできるわけじゃないから、注意だぜ。
それは、学習していくうちにわかってくるはずさ!
Java
どんな特徴があるの?
- 色々な環境で動かしやすい
- 実行速度が速い
- 大企業の大規模システムからアプリまで様々な用途に対応可能
Javaを使ったサービス
- Twitter|全角140字まで投稿できるSNS。
以前はRubyという言語で開発していましたが、実行速度の速さで現在はJavaで開発されています。 - Evernote|クラウド上でメモ書きを蓄積するWebサービス。
- Androidアプリ…AndroidアプリはほとんどJavaで作られています。
調査会社であるRedMonkの2019年度の調査によると、これら2つの言語(JavaScriptとJava)の人気が高いという結果が出ています。
このグラフを見てみて。
確かに、他の言語と比較すると人気が高いね!
人気が高いってことは、それだけ仕事も多くあるってこと?
いい質問だぜ!
レバテックキャリアが実施した調査によると、言語別の新規求人案件は次のような結果になっているよ。
- Java (31.10%)
- PHP (14.96%)
- Ruby (8.24%)
- C# / C#.net (6.61%)
- JavaScript (6.55%)
Javaの需要は予想通りだけど。。。
あれっ?JavaScriptって5位なの?JavaScriptの需要って、あんまりないの?
一見そう思えるかもしれないけど、JavaScriptはJavaScriptだけで募集する案件が少ないから上記の結果になっているだけさ!
Web系のサービスを作っていたら、大体JavaScriptは必要になるから勉強しておいて損はないんだ。
Javaを学べるスクールを探したいなら、以下記事が参考になります。
初心者向け!Javaを学べるおすすめのスクール21選
2. 学びやすさ(難易度)で選ぶ
文系出身でコンピューターなんかさっぱり!できるだけ学びやすい言語が良い!という方におすすめしたいプログラミング言語は、HTML+PHP(もしくはRuby)です。
HTML
どんな特徴があるの?
- Web上にある、ほぼすべてのWebサイトに使われている言語
- タグを使用して文字装飾をおこなうことができる
- CSSやJavaScriptなどと併用して使う
厳密には、HTMLってプログラミング言語じゃないんだ(マークアップ言語)。
Webデザイナーも取り扱う言語だからね。
えっ、そうなの?じゃあなんでプログラマーも勉強する必要があるの?
WebブラウザはHTMLを読み込んで、Webサイトを表示しているから、WebサイトであれWebアプリであれ、HTMLを理解していないと正しく表示できないからね。
Webに絡むなら必須ってことね!
PHP
どんな特徴があるの?
- Webアプリの開発に特化したプログラミング言語
- HTMLの中に組み込め、動作確認が簡単
- フレームワークが充実しており初心者でも学びやすい
PHPを使ったサービス
- WordPress|ブログやWebサイトを作成できるコンテンツ管理システム。
サイトのデザインである「テーマ」や追加機能として使える「プラグイン」もPHPで開発されています。 - Facebook|世界最大級のユーザーを持つSNS。
シンプルで読みやすい言語としてWebサーバー側でPHPが使われています。 - Slack|画像・ファイル共有やチーム内のチャットが一元管理できるチームコミュニケーションツール。
効率的に開発できる言語としてPHPが使われています。
あくまで筆者の主観ですが、命令の書き方が文系出身者にとっても感覚的に分かりやすく、また、見た目にすぐ反映されます。
“できた!”という成功体験を感じやすいため、プログラミング入門としては非常におすすめの言語です。
Rubyはどうなの?
結論、PHPかRubyはどっちでもOK!
行きたい業界や会社が決まっているなら、そこで使われている言語を学ぶのがいいね!
PHPとRubyは、どちらも情報が充実してるから、習得難易度の面でも優劣はないよ!
Web食いでも、PHPの基礎を学べる記事と、PHPを学べるスクールをまとめている記事があります。
3. 年収で選ぶ
プログラミングを身に付けてとにかく稼ぎたい!という方におすすめしたいプログラミング言語は、Go言語・Scalaです。
Go言語
どんな特徴があるの?
- 軽量・高速・シンプルなプログラミング言語
- クロスプラットフォーム対応でどの環境でも動作する
- 大量のデータを処理するのに不可欠な並行処理に優れている
Go言語を使ったサービス
Scala
どんな特徴があるの?
- 関数型言語・オブジェクト指向型言語どちらもの要素を持つ良いとこ取りの言語
- Javaとの互換性が高く、Javaの便利なライブラリがそのまま使える
- アプリやゲーム・データ分析など、作れるものは無限大
Scalaを使ったサービス
- Paypal|世界中で2億5000万人が利用する決済サービス
- LINE|日本で一番利用されているコミュニケーションツール
JavaとScalaで全般のシステムを構築。現在もScalaエンジニアを募集しています。
つかぬ事を聞くけど…、一体どのくらい稼げるの?
まぁ、お金は大事だからね。求人検索エンジン「スタンバイ」の2018年度の調査によると、プログラミング言語別の年収はこんな感じになっているよ。
- Go(600万円/年)
- Scala(600万円/年)
- Python(575万円/年)
- Kotlin(575万円/年)
- TypeScript(575万円/年)
日本のサラリーマンの平均年収が441万円だから、約1.5倍くらいは稼げるんだね。
これはあくまで中央値だけど、これら言語の最大提示年収は1000万円を超えるんだ。
JavaやJavaScriptに比べるとこれらの言語を書けるエンジニアが少ないのと、最近需要が増えているので年収が高くなっているよ。
じゃあ収入目当てなら、GoかScalaってことだね!
頭に自信があるならね!
PHPとかRubyとかでも高収入は狙えるから、無理にGo・Scalaに絞らなくてもOKだぜ!
4. 将来性で選ぶ
先ほどの年収と少し被りますが、せっかく学ぶのであれば、できるだけ将来性の高いプログラミング言語を選びたいですよね。
プログラミングができる人口がどんどん増えていく中で、これからもニーズがあると予測されている言語は、Python・Go言語です。
Python
どんな特徴があるの?
- AIやデータ分析分野でよく使われている言語
- 文法がシンプルかつ短いコード量で書けるため読みやすい
- 画像処理や音声処理などの様々な機能があらかじめ用意されている
Pythonを使ったサービス
- Dropbox|クラウド型ファイル保存サービス。約93万行のコードがすべてPythonで開発されています。
- YouTube|世界最大の動画共有サービス。最小限のメンテナンスで済むというメリットからPythonが使われています。
- バトルフィールド|架空の戦争をテーマにしたゲームシリーズ。全てのアドオンでPythonが使われています。
Go言語
どんな特徴があるの?
- 軽量・高速・シンプルなプログラミング言語
- クロスプラットフォーム対応でどの環境でも動作する
- 大量のデータを処理するのに不可欠な並行処理に優れている
Go言語を使ったサービス
あれ、人気だったJavaとかJavaScriptはどうなるの?
JavaやJavaScriptはこれからも使われ続けると思うけど、いかんせん学習人口が多い。
給与が高くて需要が増える言語としては、AIや機械学習に使われるPythonや実行速度が速いGo言語が注目されているよ。
5. 作りたいもので選ぶ
こんなものが作りたい!と漠然とでも決まっているのなら、その目的を達成できるプログラミング言語を選びましょう。
“作りたいもので選ぶ”というのは、プログラミング学習のモチベーションを上げるという意味では一番重要な判断基準なんだよ。
確かに、作りたいものがなければ“何のために勉強しているんだろう…と迷っちゃいそう。
そうだね。明確に決める必要はないけど、“普段自分が使っているSNSのようなサービスを作りたい”とか漠然とでも決まっていると、どんな言語を学ぶべきかが見えやすいよ。
じゃあさっそく見ていこう。
お店や会社などのホームページを作りたい!
ホームページを作りたいあなたにおすすめのプログラミング言語は、HTML+JavaScriptです。
ホームページを作るときは、ほぼ100%装飾もおこなうことになるので、CSSもおさえておきましょう。
まずは、HTML/CSSを学んでからJavaScriptを学ぶ、という流れにすると良いです!
挫折しやすい人は、ホームページ制作から学ぶといいぜ!
ECサイト(通販サイト)やWebサービスなどのWebアプリを作りたい!
通販サイトやWebサービスを作りたいあなたにおすすめのプログラミング言語は、HTML+JavaScript+(Java か PHP か Ruby)です。
Google ChromeやFirefoxなどのウェブブラウザを通して見るウェブサイトは、HTMLで構築されるので、まずはHTMLをおさえるところからスタートしましょう。
Java・PHP・Rubyの3つは併用することはほとんどありませんので、お好みのものを一つ選んでください。
その後にJavaScriptを学ぶ形で良いでしょう。
初心者がPHP、Java、Rubyを一気に習得するのは、かなり厳しいぜ!
JavaかPHPかRubyに集中して、そのあとにJavaScriptの基礎をおさえる。
ここまできたら、あとは目的のサイトを作りながらJavaScriptを学んでいくっていう流れの方が、スムーズだね!ちなみにRubyは、唯一日本人が開発した言語なんだ。民泊アプリのAirbnbや動画配信サービスのHuluなどはRubyで作られているよ。あんまり出てこなかったけど、実は世界中に熱心なファンも多いんだ。
スマホアプリを作りたい!
おすすめのプログラミング言語は、iOSならSwift・AndroidならJavaです。
Swiftは、2014年にAppleよりリリースされた言語さ。
iOSアプリを作るときは、Objective-CもしくはSwiftで開発するケースが多いぜ!
AIや機械学習を使ったサービスを作りたい!
おすすめのプログラミング言語は、Python・Go言語です。
AI実装者になりたいなら、今んとこはほぼPython一択だね。
ただ、数学の知識も必要になるし、初心者からしたらハードルは高いぜ!
私は何か簡単なゲームを作ってみたいから、まずJavaScriptから学ぼうかな!
良いね!作りたいものが少しでも決まっていると、言語も選びやすいでしょ?
これだけ多くの言語があるけど、基礎の基礎は同じ。
ひとつの言語をマスターしてしまえば、次に新しい言語を学ぶときはより短い時間で習得できるぜ!
色んな言語を習得できるように頑張る!
プログラミング言語の選択に正解・間違いはない
今回は、判断基準別におすすめのプログラミング言語をご紹介していきました。では、最後に要点だけまとめておきましょう。
人気度で選ぶなら | Java / JavaScript |
---|---|
学びやすさで選ぶなら | HTML / PHP / Ruby |
年収で選ぶなら | Go / Scala |
将来性で選ぶなら | Python / Go |
作りたいもので選ぶなら |
|
一応このように紹介はしていますが、プログラミング言語の選択に正解・間違いはありません。
どの言語も何かしらの形であなたのスキルになります。
そのため、“どれにしようかな…?”とあまり悩みすぎず、“とりあえず手を動かそう!”という気持ちでプログラミングに臨んでみてくださいね。