こんにちは!たく丸です!
今回はプログラミングの効率的な勉強方法についてご紹介致します。
プログラミングの方法って実は少し特殊なんです。
学校での勉強方法とは違っていて、学校の勉強はできるけど、プログラミングになると全然できないう方が多いです。
ましてや、学校で勉強ができない方にはもっとできないということが良くあります。
実際に勉強してるけどなかなかうまいこといかないのでその結果…挫折。
とよくあるパターンですよね。
それはさすがにもったいないと思うので今回は効率的な勉強方法をご紹介致します。
ここではまずプログラミング学習をするにあたり、「考え方」というところフォーカスを当てていきたいと思います。
ここを理解するかしないかで学びに大きな影響が出ると思いますので大事な部分です。
プログラミング学習において暗記は非常に効率悪いです。
ただ多くの方がやっているのが現状です。
例で例えるとこんな方が対象です。
・WEB用語をノートに綺麗にまとめている
・WEB用語の単語帳を作ったりしている
・ググらないと分からない自分に対して「自分はまだまだだな…」
・progateのスライドとか教科書、資料を完璧に覚えようとしている
など様々ありますが、当てはまってる方は完全に暗記しようとしていますので
すぐに辞めましょう!
早急に意識を変えていく方がいいです!
ではなぜ暗記しない方が良いか??
答えは「プログラミングはカンニングしてもOK」だからです。
初心者の方からしたら「えっ?いいの?」「コピペでもいいの?」となるかもしれません。
ですが実際のところ、プログラミングを全て記憶するというのは非常に効率が悪いかつ、
1文字でも間違えるとエラーになったりしますので、忘れて曖昧なコードを書くのであれば最初からカンニングすれば正確な答えがわかります。
覚えるに越したことはないのですが、最初からいきなり全部覚える必要はないです。
基本的な箇所さえ押さえておけばあとはカンニングで対応することで、日々の積み重ねで自然と覚えていきます。
ですので「勉強」=「暗記」という考え方ではなく、「勉強」=「ググり方(調べ方)」といっても過言ではないでの暗記は最小限にして、
どんどんカンニングして手を動かしましょう!
上述したプログラミングについての考え方ですが、インプットしているだけでは成長は遅いので、どんどんアウトプットしていきましょう。
具体的には
インプット・・・ドットインストール、プロゲート、書籍などの学び(吸収)に関すること
アウトプット・・・学んだ(吸収したこと)を形にして表現していくことです。例えばサイト制作やプログラムを書いてみるなどになります。
プログラミング力を身につけるには実際にプログラムを書くことが非常に重要です。
よくあるのがインプットをどんどんしてアウトプットする頃には最初に覚えたことを忘れてるパターンですね。僕もこれは昔よくやってました。笑
プログラミングに完璧ということは基本的にはないですので、完璧に覚えることは時間の無駄です。
実際に作業する時に必要な知識を身につけて作業する方が圧倒的に時間効率もよく一度に覚えることが少ないが反復になるので確実に自分の力になります。
なので「インプット > アウトプット」ではなく、「インプット = アウトプット」の考え方を持つことで、
無駄な知識を得るために無駄な時間を使うことがなくなりますので、アウトプットのための知識をより多く得ることができます。
上記からもわかるように
「アウトプットに必要な知識を必要な分だけインプットする」
ということが効率よく学べますし、僕自身もこの方法でずっと作業しています。
まずは考え方から変えてみましょう!
ここからはプログラミングの学習方法について5つのステップに分けてご紹介いたします。
プログラミングの勉強を始めたものの「何の為に」勉強して辞めてしまう方も多くいます。
最初はプログラミングできると「かっこいい!」や「収入が上がる!」と息込んで始める方もいますが、
実際にそのフェーズまでたどり着く前にリタイアします。
ですのでまずは自分がなぜプログラミングしたいのか?といところを考えてから勉強しましょう。
その中でも悩む方もいると思うので僕からのアドバイスですが、正直なところ「何でもいい」です!
「開発」=「LINEやFaccebookみたいなサービスを作る」ではないので、
身の回りにあるとちょっと便利だな、と思うことでも十分です。
ここで学ぶことは何かを作って実際に成功経験を得ることが重要なのでレベルが低くてもいいかと思います。
興味を持って取り組むことで成長するスピードも段違いです。
開発したいものによってどの知識が必要で何を準備しないといけないというのが結構変わってきます。
大抵のことは、Google検索で「〇〇 作り方」みたいな感じで検索すると答えが出てきます。
その他にも実際にプログラマーの方に聞いてみて、開発に必要な知識を教えてもらうのもありかと思います。
開発したいものが決まり、必要な知識と技術がわかったらあとは実践あるのみ!!
そう思って勉強を始めるかと思いますが、大抵の方が「わけわからん…」と頭をパンクさせているのをよくみます。
おそらく最初から独学で講師なしは挫折しやすいので、「progate」や「ドットインストール」など初心者にも比較的わかりやすい教材を用いて学ぶことをお勧めします。
僕も最初はドットインストールにお世話になりました。
最初は小さいことでも成功体験を積んで学ぶことで、飽きない(挫折しない)ように学べるかと思います。
ただ学ぶ一方で実際に手を動かさないと「インプット=アウトプット」にならないので、一つ学んだら一つ書いてみるように意識していきましょう。
ここでは最低限の「基礎」習得だけで大丈夫です!
ここでは実際に学んだ基礎を元に開発に取り組んでみましょう!
ただここでもどうしたらいいかわからないということになるかと思いますので、
その時は「〇〇 作り方」で検索すればOKです。
ただ最初に検索した時と基礎がわかってから見るのとでは同じ内容でも理解が全然違います!
調べてもわからなければ誰かに聞けば解決します。
インプットばかりでなくアウトプットすることに価値が生まれます。
難しければ目標を下げればいいだけですので、アウトプットしましょう。
この時点で既に一つ開発しているかと思います。
ですので、次に開発するものを決めて作りましょう。
この時に以前作ったものとは別のものを作ることで、新しい知識を手に入れることができます。
プログラミングはインプット、アウトプットの繰り返しなのでいかに頭で考えて手を動かすかです。
そうすることで地道に続けることで気付いた時には、桁違いの知識と技術が手に入ります。
今回は効率的にプログラミングを学ぶ方法をご紹介致しました。
プログラミングで大事なことは技術や知識を使い熟すことが大事です。
そのためにも勉強方法を改めて効率よく勉強していきましょう!