初心者
プログラミング言語
新人プログラマ応援

2019年に初心者が学ぶべきプログラミング言語

新人プログラマーの皆さん、そしてこれからプログラミングを学ぼうと考えている方は何の言語を学べばいいのかわからないでしょう。

WEBにはプログラミング言語の難易度や、これから学ぶべき言語などのサイトが多数存在しますが、なぜそれを学ぶべきか。そしてそれを学ぶことでこれからどうなるのか。まで説明を行っているサイトは少ないです。色々なお話を交えながら簡単に説明したいと思います。

また、以下の説明は私の知識ではなく、とても優秀な記事をまとめたに過ぎません。

もしより詳しい情報をお持ちの方や、間違ったことを記述している場合は教えてくださると大変助かります。

また、遠回りをしながら本題に入っていきますが、面倒な方は以下の内容のみを参照ください。


結論


  • まずは有名な言語(Java,C#,Python,JavaScriptなど)を学ぶことをお勧めします。

  • 一つの言語を学んだからそれで終わるのではなく、色々な言語を学びましょう。

  • 言語に限らず、気になった物は片っ端から手を出しましょう。合わなかった場合はその時点で止めても大丈夫です、止めても学んだ知識は無駄にはなりません。

それでは遠回りをしながら本題に入っていきます。


0.歴史の流れ

近年はとてつもなくIT業界に風が吹いています。

2018年末の世界の企業の時価ランキングはご存知でしょうか。

TOP10のうち8つがITを主要とした企業です、もちろんこの中に日本企業は含まれていません。

では平成元年はどうだったでしょう。

なんとTOP50のうち32社が日本企業です。さらに言えばTOP5を日本企業が独占しています。

気になった方はぜひ調べてみてください。

衝撃でしょう?平成元年の頃は世界のトップ国といえば日本だったんです。

ですが今はTOP30の中にすら含まれていません、もちろんランキングだけが全てではないので何とも言えませんが数字は絶対的です。

色々な理由が考えられますが、その一つにとてつもない速度でIT企業が上がって来た事が考えられます。

そして、業界の成長を見越して投資をしてきた企業が現在のTOPに立っています。

プログラミング自体に関係の無い話かと思われますが頭の片隅に入れておいてください。


1.学ぶ背景

いきなりですが、あなたはなぜプログラミング言語を学びたいんですか?

一見関係ないような質問ですが、何の言語を学ぶのかにとても重要な情報です。

人それぞれ理由があるはずです。面倒くさがらず考えてみてください。

主要な理由をまとめてみました。


  • 就職するために必要

  • 趣味でゲームを作りたい

  • IT業界に転職したい

  • これから先、学んでおくとよさそう

  • カフェでコーヒー飲みながらPC触ってドヤ顔したい

各自、色々な理由があると思います。

ここからが大切です。


なんで?を使用して自問自答してみてください。

(例)

1. 就職するために必要←なんで?

2. IT業界に就職するから←なんで?

3. ①これから先未来があるから

 ②ITの時代だから

 ③楽しいから

 ④すぐ就職できそうだから

のように、最低でも2層下までは論理的に突き詰めてください。

可能ならば最下層まで問い詰めてください。メモ帳などにメモをするとより効果的でしょう。


2. 2019年に学ぶべきプログラミング言語

お待たせしました、本題に入っていきます。

まず最初に、プログラミング言語は200を越える種類が存在します。その中から選ぶのは大変そうに見えますが実際そんなことはありません。


2.1 プログラミング言語はそれぞれ得手不得手がある。

プログラミング言語は多数の種類があると言ってもそれぞれ差別化されていることがほとんどです。

例えば、お箸。

お箸は、共通して食事をするための道具ですよね?じゃあ一種類しかないのでしょうか?

そんなことは無いですよね。

わりばしのような使い捨てで使用できるお箸から、最近は納豆専用のお箸まで出ています。もちろん同じ割りばしでも、値段が安く丈夫でないものから、高級飲食店で出るようなしっかりした割りばしも存在します。

それぞれ差別化されていますね。

プログラミング言語も同じです、用途があって、それに向いている言語と向いていない言語があります。つまり用途に見合ったものを学ぶべきなのです。


2.2 あなたが学ぶべきプログラミング言語

最初に言っておきます。My箸を見つける前に、とりあえず万能箸を身につけましょう。

1.のステップで洗い出したあなたが学びたい理由を思い出してください。

ゲームが作りたい方はそれに向いた言語が、

かっこいいホームページを作りたい方はそれに向いた言語があります。

ですがまずは万能な、というよりも簡単でわかりやすく、有名な言語を学ぶことをお勧めします。

あなたはまだまだ赤ちゃんです。

割りばしをキレイに割ってマナーを守りながら食事をする赤ちゃんはなかなかいないと思います。

まずは、初心者用の言語を学ぶことをお勧めします。

初心者用と言っても難易度は高いです。ですので、


有名で参考書がたくさんある言語 をお勧めします。

有名というのがキーポイントです、参考書の種類が多いほうが学びやすいのでオススメします。

例として、JavaやPython、C#などをお勧めします。

最短ルートで目的に応じた言語を学びたい方は、私の知る限りの例を挙げますので参考にしてください。


  • メモ帳や、生活向上用のAndroidアプリを作りたい ← Java,Kotlin

  • メモ帳や、生活向上用のiPhoneアプリを作りたい ← Swift

  • ゲームを作りたい ← Unityに対応のC#がお勧め(2019/01/20現在)

  • ハッカーみたいにポチポチやってみたい。 ← Bash(言語ではないですが検索してください)またはC言語を学んでください。

  • ホームページを作りたい ← HTML,CSSを学んでからJavaScriptを学んでください。

  • よりかっこいいホームページを作りたい。 ← TypeScriptとPHPを学んでください。

  • AIを作ってみたい。 ← Pythonを学んでください。

  • IT業界に就職したい。 ← 色々なパターンが考えられます。詳細を以下に明記します。


  1. ゲーム業界に転職したい ← ジャンルによりますがC#を学ぶといいでしょう。

  2. 色々なシステムを作ってみたい。 ← Javaを学んでおけば間違いないです。

  3. 自社のWEBサービスが作りたい ← JavaScriptを学んでください。RubyやPython、PHPじゃないの?という声もありますが、まずはJavaScriptを学んでください。現在はサーバーサイドでJavaScriptも動作します。


2.3 2019年に学ぶべきプログラミング言語

※この記事は私の偏見で出来ています。

本記事の本題です。本当にお待たせしました。

いや、私は億万長者になるんだ。これから先最先端で学ぶんだ。という方のためのチャートです。

何もわからず、今超キてるやべースーパーなスペシャル言語Pythonをマジ学ぶぜ。

って人は今すぐ勉強を辞めてください。遅すぎます。年収は上がりますが最先端も億万長者も無理です。

RubyもPythonもPHPも全く違います。

結果から言います。

JavaScriptとFlutterとDartとGoを学んでください。

実質3つですが、4つです。数打てば当たる戦法ですが、二塁打くらいは打てるでしょう。

JavaScriptはスーパースペシャルやべー言語です。今年の前期はPythonが、後期からはJavaScriptがエースでしょう。むしろITの最先端では現在、JavaScriptが大流行です。

DartとGoについてはそこまで詳しくはないので、余計な記述は避けますが、学んで損は絶対に無いです。当たれば今のPythonのようになります。特にGo言語は難易度も低いので学びましょう。


最後に

とても長い記事でしたが、自身が学ぶべき言語と目的は見つかったでしょうか?

一つの言語を学んだあとは、ほかにも色々学んでみてください。


備考

ここだけの秘密の話をします。豆知識なので読む必要はありません。

流行には理由があります。流行は作られるものです、これはご存知の方もいらっしゃるのではないでしょうか。

今年流行りの色も会議されて作られています、国際流行色委員会ってのがあるんです、知らなかった方は夢を壊してすみません。

プログラミング言語はそんな委員会は多分存在しませんが、流行する明確な理由があります。


皆が使うから流行る

単純な理由ですが、これに尽きます。じゃあ ”なんで?” 流行るのでしょうか?

凄くわざとらしい話ですが、各社、自社のプログラミング言語を使って欲しいんです。

プログラミング言語自体は無料でお金は入らないのになんででしょう?

Pythonがわかりやすい例です。Python=AIやデータ分析のハイテク言語というイメージが定着していますが、もともとそんなイメージはありませんでした。

出た当初に使われた方にお聞きしましたが、「書きやすくて、色々なOSやハードウェアに対応してる言語だなぁ」くらいのイメージでした。

ですがそれが功をなして、どこでも動くなら統計処理や自動化とか適してるぜ!と考え使用した先人がいて、パッケージが充実して、AIやデータ分析の開発がしやすくなってこうなりました。

その結果、機械学習はPythonというデファクトスタンダードが定着しました。

つまり、数を集めれば結果としてみなが手放せなくなるということです。

そうなれば、無料であろうと有料であろうと皆が使うから自社に注目が行きますから、巡り巡ってお金が入ることになります。

シェアを集める事が、流行の秘訣になります。

シェアを集めるには、それを使用するプログラマにストレスがない環境が必要です。

ただ、どれだけ使いやすくても注目されなければシェアは集まりません、勘のいい方はもう気づいているかもしれませんが、知名度がある会社が自社のプログラミング言語を出したよ!といえば嫌でも目に入りますよね。

ですので、先ほど挙げた、Go言語やDartが流行すると私は予想しています。