知識の幅を広めるのも大事だと思う

スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 |
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般

何かを勉強する際には、目的を持って勉強すると効率が上がるのは事実で、私自身も実感しています。
たとえば、プログラミングの勉強をするのであれば、「掲示板システムを作る」という目的を持って、その目的を実現するために、実装に必要な部分のみを勉強していくというやり方は、効率良く知識を吸収できると共にスピーディでもあります。

勉強が苦手な人向けの「遅延評価勉強法」 : ロケスタ社長日記

おいらの言葉で言いなおすと「必要になったら、必要なところだけ勉強する」です。

スポンサーリンク

必要な実装に、必要な知識だけ勉強するというやり方は、インプットとアウトプットがほぼ同時なので、本当に身につきやすいです。
一度でも使ったことのある知識というのは、記憶に定着しやすく、二度目以降のアウトプットもスピードが上がる。

インプット過多では自滅する。消化の時間を確保しよう – モチベーションは楽しさ創造から

あなたは、どれくらいインプットに対して消化の時間を作っていますか?あながたリーダーだとすると、どれだけメンバーに質問をして、考えさせていますか?「答え」よりも「答えを考えるプロセス」という消化の時間が自分を鍛えるのです。

こちらは、インプットしたことを消化するプロセスが大切だという意見。
これもその通りだと思います。
意図的に消化(アウトプット)のために考える時間を設けるというのは、知識の定着だけでなく思考力を鍛えることにもつながります。

上記の意見に加えて、やはり私はインプットも相当大事だろうと考えています。
一つには、インプットした以上のことをアウトプットすることは不可能であるから。
インプットの組み合わせで、より多くのアウトプットは可能ですが、基本的には、知らないことは吐き出せません。

もう一つは、知識を幅広く身につけておくことも大切だと思うから。
たとえば、再びプログラミングの例を出しましょう。

プログラム言語には、特定の命令を実行する関数というものがあります。
JavaScriptという言語で、「document.write(‘○○’);」は、「○○という文字列を画面に表示せよ」という命令の関数です。
プログラム言語には、こういった関数が数限りなくあるわけですが、綴りまで正確に全て覚えようとするのは困難極まる作業です。

しかし、プログラムを組む上で「実現できること」を知っておくことは大事です。
もう少し平たく言えば、「○○を実現できる関数がある」ということを知っているか、知らないかでは、問題解決の場面や応用力で差がつきます。

ですから、関数リファレンスのような辞書的な書籍で、アウトプットなしであっても、目を通すだけのインプット重視の勉強をすることも大事だろうと思うのです。
関数の正確な名前までは覚えられずとも、「○○を実現できる関数がある」ということくらいなら、頭の片隅ですぐに覚えられます。

実装の際は、その頭の片隅の引き出しを手がかりに、リファレンスを調べながら行えば良い。
どこを調べればよいか、ということを知っておくだけでも、作業スピードは変わってきます。
弁護士の仕事で言うところの六法全書のような存在です。
六法全書を全て記憶している弁護士はほとんどいないでしょうが、彼らは、六法のどこをどう調べれば問題を解決できるか、ということは知っており、そのためのインプット勉強を行っています。

インプットばかりでは、たしかに消化不良になりますけど、広く知識を習得するにはインプット重視の勉強法も必要だと思います。

スポンサーリンク
 
スポンサーリンク