言語の数が多くてどれを選ぶべきなのか。。
選ぶ基準が知りたいなぁ。。
こんにちは、古賀です。
本記事では、
はてな
「プログラミング言語は数が多くてどれを勉強したら良いかわからない。。」
と悩まれている方に向けて、
プログラミング言語を選ぶ際の3つのポイント、
- 「需要」
- 「年収」
- 「作りたいモノ」
という視点から、オススメの言語をご紹介します!
プログラミング言語選びはプログラミング学習の第一歩です!
継続して勉強していくためにも、目的を意識して勉強する言語を選びましょう!
自己紹介が遅れましたが、
わたしは大学卒業後、上場IT企業に就職し、プログラマー、システムエンジニアとして
約10年間働いておりました。
プロフィールの詳細はこちらです。
-
プロフィール
こんにちは、古賀正雄です。現在36歳です。 簡単ではありますが、こちらのページで自己紹介とこのブログについてお話します。 高校時代 学生時代は主に野球をしていました。 進学先の高校も野球で選びました。 ...
続きを見る
始めに言っておきますが、
ポイント
「作りたいもので選ぶのが一番!」
ですよ!
それでも、「需要」や「年収」も気になると思いますので、
それぞれの視点からプログラミング言語を紹介します!
プログラミング言語を求人の多さ「需要」で選ぶ
せっかくプログラミングを勉強しても、
「需要」がなければ趣味で終わってしまいます。
「需要」を基準にして、プログラミング言語を3つご紹介します!
求人案件の3割を占める「Java」
「Java」は昔からあるプログラミング言語で、
「日本のプログラム求人案件で、長年トップをキープしているプログラミング言語」
です。
WEBアプリ、Androidアプリ、企業システムと様々な開発で使われている言語です。
勉強を始めるにあたり、開発環境を準備することが少々めんどうな部分はありますが、
一度身につけることができれば、転職や案件探しに困ることはないでしょう!
WEBサービスの王道言語「PHP」
「PHP」は、
「WEB開発において、サーバーサイド側で使用するプログラミング言語」
です。
「PHP」はWEB開発限定言語であるため、汎用性は低いですが、
WEB開発と言えば「PHP」と言われる程、多くのWEB案件で採用されています。
また、初心者にとって難易度が易しい面もあり、
とっかかりやすいことも魅力の1つです。
ただし「PHP」は、
注意ポイント
『WEBサイト制作に必要な言語である「HTML」、「CSS」の上に成り立っている』
ようなものであるため、
PHPの勉強を始める前に、まず上記2つの言語を勉強する必要があります!
「PHP」と肩を並べるWEB開発言語「Ruby」
「Ruby」は、
『WEB開発において、PHPと同じくらい採用されている言語で、
日本人の「まつもとひろゆき氏」が作成したプログラミング言語』
です。
日本語での情報も多く出回っています。
そして、
『「Ruby」のフレームワークである「Ruby on Rails」を使うことで、
開発効率が良く、「PHP」と同様に初心者にとって学びやすい言語』
でもあります。
※「フレームワーク」は「雛型」という解釈で良いですが、
「Rubyを使いやすくしたもの」と言い換えたほうが理解しやすいです。
「PHP」にしても「Ruby」にしても、
勉強のしやすさに加えて、需要があるため、学習する人も増えてきています。
希少性といった意味では少々低めかもしれません。
プログラミング言語を「年収」で選ぶ
ビズリーチ プログラミング言語別年収中央値を発表、求人検索エンジン「スタンバイ」調べ
より引用
プログラミング言語毎に、おおよその「年収」も決まります。
多く稼ぐことを目的にするのであれば、
「年収」を目安にプログラミング言語を選ぶのも良いでしょう!
Googleが開発した言語「Go」
「Go」は、
『「Go」言語はGoogleが開発したプログラミング言語』
です。
「Go」言語はWEBサーバーの開発や、アプリケーション開発に使用されています。
処理が速く、シンプルであり、
今後は「PHP」の代わりになるのではないか?とも言われています。
注意ポイント
「まだまだ需要が追い付いておらず、求人自体は増えていない状態」
という面もありますが、
『プログラミング学習者に人気かつ、評価も高いため「これから伸びてくる言語」』
と言えるでしょう!
「Java」の後継者?「Scala」
「Go」言語と肩を並べて年収が高い言語が「Scala」です。
「Scala」は、
『「Java」の機能が使用できるように、互換性を第一に考えて作られた言語』
です。
「Java」と同じく、WEBサービス、アプリ開発、ゲーム開発と幅広く使用される言語です。
ただ『プログラミング初心者が真っ先に「Scala」を勉強した方が良い!』という意見は、
あまり聞いたことがありません。
勉強にも時間がかかると言われているため、
まずは、
『「Java」を勉強してから「Scala」を勉強することをオススメ』
します!
求人も伸び盛り!「Python」
「Go」と「Scala」に負けず劣らず年収が高いのが「Python」です。
「Python」は、
「AI・機械学習で活用されることが多い言語」
ですが、
その他「アプリ開発」、「IoT関連の開発」、「データ分析」などにおいても使用されています。
「Go」と「Scala」とは違い、
『「Python」は需要が高い』
です。
企業がAIに力を入れてきているため、
「学習後に需要が全くなくて困った。。」
という可能性は低いでしょう。
需要と年収のバランスも良く、
幅広く活用されている言語であることから、初心者にオススメという声も非常に多いです!
プログラミング言語を「作りたいもの」で選ぶ
需要と年収という面からプログラミング言語を紹介してきましたが、
最後は「何を作るか?」、「何をしたいか?」に焦点をあてて、
プログラミング言語を紹介します!
わたしはこの「何を作るか?」、「何をしたいか?」で選ぶのが一番良いと思います。
「作ることが楽しい!」と思えるのであれば、
勉強も苦ではなくなります!
ぜひ自分が「作りたい!」、「これをしてみたい!」と思えるモノから、
プログラミング言語を選んでみてください!
AI機械学習関連を作るなら「Python」
先程も登場しましたが、
『「AI・機械学習」なら「Python」』
です。
企業が力を入れてきていることから需要も高く、
習得しているエンジニアも少ないため年収も高いです。
「AI・機械学習」に興味があれば「Python」の勉強を始めましょう!
iPhoneアプリを作るなら「Swift」
『iPhoneアプリの開発であれば「Swift」』
です。
Apple製品のために作られた言語になるので、汎用性はあまりなく、需要も多くありません。
ただ、「iPhoneアプリを開発したい!」という熱い気持ちがあるのであれば、
「Swift」を勉強してみましょう!
Androidアプリを作るなら「Kotlin」
iPhoneアプリが「Swift」ならば、
『Androidアプリ開発は「Kotlin」』
です。
「Kotlin」はAndroidアプリの開発がメインですが、WEBアプリの開発も可能です。
「Java」でもAndroidアプリは開発できますが、
今後は需要が「Kotlin」へ移っていくと考えられます。
まだまだエンジニアの希少性も高いため、年収ランキングも上位です。
Androidアプリを開発してみたいという方は、「Kotlin」の勉強を始めてみましょう!
iPhoneアプリとAndroidアプリの両方作りたいなら「Flutter」
「Flutter」であれば、
「iPhoneアプリとAndroidアプリの両方の開発が可能」
です。
ただし、「Flutter」はこれからの言語と言えるので、
需要が追い付くまではもう少し時間が掛かると思います。
WEBサイトを作るなら「HTML/CSS/Javascript」
『WEBサイト制作であれば「HTML」、「CSS」、「Javascript」』
の3つです。
3つの言語を上げましたが、3つで1セットと考えてください。
それぞれの役割は、
- 「HTML」は、WEBサイトを表示させるための言語
- 「CSS」は、WEBサイトのデザインを担当する言語
- 「Javascript」は、WEBサイトに動きを与える言語
です。
この3つの言語でWEBサイトが完成します。
WEBサイト制作は、副業をされる方であったり、
将来在宅ワークをしたい方に向いている仕事です。
WEBサイト制作に興味がある方は、
まず「HTML」、「CSS」、「Javascript」の3つを勉強しましょう!
※ちなみに「Javascript」と「Java」はまったくの別モノです!
WEBサービスを作るなら「PHP」or「Ruby」
需要パートでも登場しましたが、
『WEBサービスを作るのであれば「PHP」or「Ruby」』
です。
どちらを選ぶかは、お好みで良いかと思います。
先程もお話しましたが「PHP」や「Ruby」は、
「HTML」、「CSS」、「Javascript」の土台の元に成り立っています。
「PHP」や「Ruby」を勉強する前に、
まずは「HTML」、「CSS」、「Javascript」を勉強しましょう!
ゲームを作るなら「C#」
『ゲームを作るのであれば「C#」』
です。
「C#」はMicrosoftが独自に開発したプログラミング言語で、
「C」がベースとなっています。
ゲーム開発は「Unity」という開発環境を使用しますが、
その「Unity」上で「C#」が使用できます。
家庭用ゲーム、PCゲームを始めとした、様々なゲームが「C#」で開発できます。
ゲーム開発に興味がある方は「C#」の勉強を始めてましょう!
1つのモノに拘らず、幅広く作りたいなら「Java」、「C#」
『幅広く色々と作ってみたいという方は「Java」or「C#」』
です。
「Java」は先程お話した通り、多くの開発案件で使用されています。
「C#」もゲームの他、企業システム案件やWEBアプリの開発も可能です。
「Java」、「C#」の2つは需要も高いです。
幅広く色々と作りたい方は、「Java」、「C#」を勉強してみましょう!
結局オススメのプログラミング言語は?
「ここまで読んだけれど、結局どれを選んでいいかわからない。。」
と思われた方向けに、わたしが選ぶオススメ言語についてお話します!
個人的にオススメなのは「C#」です。
実際に大学卒業して、就職した先で使用されていた言語が「C#」だったのですが、
非常にとっつきやすかった印象です。
開発対象も広く、需要もありますし、オススメの言語です!
ただ、
『客観的にオススメなのはWEB言語の「HTML」、「CSS」、「Javascript」』
です。
WEB制作の基礎となる部分ですので、
勉強しておいて損はないです!
上記3つの言語を終えたら、
「PHP」、「Ruby」のどちらかを勉強して、
WEB開発案件を一通りこなせるようにしておくのが定石かなと思います。
プログラミング言語は本記事以外にもちろんありますが、
需要の面を考えると、初心者が最初に選ぶ言語としては適切でないと思います。
まとめ:プログラミング言語の選び方
ここまでの話を表にまとめます。
どの言語が一番自分の目的に合っているか選んでみましょう!
プログラミング言語 | 需要 | 年収 | 主な開発 |
Java | ◎ | △ | WEBなど幅広い |
PHP | ○ | △ | WEBサービス |
Ruby | ○ | ○ | WEBサービス |
Go | △ | ◎ | WEBサーバーなど |
Scala | △ | ◎ | WEBなど幅広い |
Python | ○ | ○ | AI・機械学習 |
Swift | △ | ○ | iPhoneアプリ |
Kotlin | △ | ○ | Androidアプリ |
HTML/CSS/Javascript | ○ | △ | WEBサイト制作 |
C# | ○ | △ | ゲームなど幅広い |
最初の言語選びは非常に悩まれると思います。
ただ、気持ちを楽にして考えてください。
1つ言語を学習したら、後は表現が少し違うだけで、
2つの言語からはスムーズに頭に入ってきます。
日本語と英語程の違いはありません。
今まで学んできた言語の応用です。
気が変わったらまた別の言語を勉強したっていいんです。
今までの勉強が無駄になったりはしません。
最初の1歩を踏み出しましょう!
エンジニア生活の始まりです!
まとめ記事に戻る
-
未経験からエンジニアへ!エンジニアデビューから年収1000万までの完全ロードマップ!
※本記事は、各記事のまとめ記事です。 こんにちは、古賀です! 本記事では、 「プログラミング未経験者がエンジニアとして働き、 年収1000万に到達するまでの道のり」 をご説 ...
続きを見る