見出し画像

効率が良いプログラミング勉強法

個人的な意見となりますが、現在プログラミング学習中の方や、これからプログラミングを学習したいと思っている方、スクールに通うことを検討している方の参考になればと思います。

私は大学卒業後、未経験でIT企業に入社して一からプログラミングを学習しましたが、当時の私の勉強法は、家でひたすら入門書を読みまくって知識をインプットし、そこで得た知識を業務時間中にアウトプットする、というものでした。人によって合う合わないはあると思いますが、結局のところ、今でもこの勉強法が最も効率が良いんじゃないかと思っています。

「プログラミングは実際に手を動かして書いてみることが大事」とか、「アウトプットすることが大事」などと言われます。どんな分野であってもアウトプットしなければ本当の意味で理解することはできないのは事実ですが、そもそもアウトプットをするためには、それなりの量をインプットが必要です。なので、PCの前に座っている必要のない家での時間は基本的に本からのインプットに徹して、PCの前に座っている必要がある業務時間の少し暇な時間で知識のアウトプットをする。という学習スタイルをとっていました。

IT企業で働いている人

先に書いた話は既にIT企業で働いている人前提の話になります。駆け出しエンジニアとして現在仕事をしながら勉強中という方には個人的におすすめの学習法。仕事の案件によっては勉強時間を作る暇がなかったり、残業が多くて家で学習時間を作るのもしんどいという時期もあることでしょう。ですが基本的にこIT業界は忙しさに波がある業界で、忙しい時はすごく忙しいですが、暇な時は本当に暇なので、暇な時はひたすら業務時間中にアウトプットをするのが良いと思います。会社の中には業務時間中に自分の勉強をすることに嫌な顔をする人もいるかもしれないし、中には罪悪感を感じる人もいるかもしれません。ですが、この学習の積み重ねが、後々会社にとっても大きな財産になるはずです。流石に、やるべき業務をずっと放置したまま自分の勉強をするのは良くないですが、納期とのバランスを考えて、意図的に業務時間中に自分の勉強時間を作るのは個人的には良いことだと思います。

スクールを検討している人

これからプログラミングスクールに通ってプログラミングを学習したいと考えている人もいることでしょう。スクールでの学習を検討している人にも、同じ学習法をおすすめします。スクールではそのスクール独自のカリキュラムが用意されているはずですが、そのカリキュラムだけをこなせていれば現場で活躍できるほどのスキルが身につくわけではありません。それはスクールのカリキュラムの質が悪いとはそういう話ではなく、1種類の教材の内容を理解しただけでは圧倒的にインプットの量が少ないからです。すごく地頭の良い人であればスクールのカリキュラムの内容から多くを身につけることができるかと思いますが、多くの人はそうはならないと思います。スクールのカリキュラムに取り組んでいる時には、スクールで用意された教材からインプットし、それ以外の自主学習の時間では、スクールの教材とは別の入門書を使ってインプットする。そして新しく得た知識はカリキュラムに取り組んでいる時間でアウトプットする。これが効果的な学習法ではないかと思っています。

まとめると、既にIT企業で働いている人も、そうでない人も、PCを使って作業をしなければいけない時間でアウトプットし、PCを使わなくてもよい時間では書籍によるインプットに徹する。これが個人的に思う効率的な学習法です。

オンライン学習コンテンツの使い方

今はProgateやドットインストール、Udemyなど、オンラインの学習コンテンツも豊富で、プログラミングの学習を始めるハードルも下がってきており、必ずしも書籍から入る必要もなくなってきました。だからこそ、個人的には書籍での学習をおすすめします。おそらく、今プログラミングの学習を始めるにあたっては、Progateなどのオンライン学習コンテンツから入る人が多いことでしょう。そういう環境の中で書籍を多く読んでいれば、それは他との差別化に繋がります。また、実際の現場での開発では、プログラム言語やフレームワークなど、使用する技術の公式サイトのドキュメントを読んだり、設計書を読みながら開発をすることが多くあります。その時に、文章を読み解く読解力がなければ詰みます。読解力を鍛えるという意味でも、プログラミングを学習するときに入門書を何冊か読んでおくことをおすすめします。

Progateプログラミングを学習することに対する抵抗感をなくすという意味ではすごく良いツールですが、これも業務時間の休憩時間などにコツコツやるのが良いんじゃないかと思っています。ドットインストールなどの動画コンテンツも、業務時間の休憩時間などに見て学習するのが効率的じゃないかと思っています。

ちなみにドットインストールは私は今でもよく見ていて、自分が知らなかった技術の概要を理解するのにすごく役に立っています。個人的にはドットインストールは全くの初心者向けというよりは、プログラミングをある程度勉強した人が、新しい技術について知りたい時に概要を知るために利用するのが良いと感じています。

作りたいアプリがあるのなら

書籍で大量にインプットするのが効率良い学習法だと思うと述べてきましたが、これは、私が個人的に作りたいアプリがなかったから、結果的にこのような学習法になってしまったように思います。もし、プログラミングを習得して自分で作成したいと思うアプリがあるのなら、それを作るために必要となる技術を自分で調査しながら学習を進めていくのがおそらく最も効率的です。私の場合、未経験でIT企業に就職し、自分で作りたいものはないけれど、とにかく早く実力をつけて認められたいという思いから勉強を続けていました。私のように、明確な目標はないけれど、とにかくプログラミングのスキルを高めたい、という人には、書籍でのインプットと業務時間でのアウトプットがおすすめです。

初心者におすすめの書籍はこちら


サポートいただくとめちゃくちゃ喜びます。素敵なコンテンツを発信できるように使わせていただきます。