プログラミングの本から得た知識をどのように最大化しますか?[閉まっている]


26

誰かが本を読むのにどれだけ時間がかかるか気にかけているからではなく、人々が本(または他の情報源)から知識を最良かつ最も効率的な方法で脳に取り込む方法に興味があるからです。

個人的に私はマルチパスアプローチを取ります(元の質問への答えから):

  1. 内容をざっと読み、面白い見出しで何かを読んで読んでから、最後に素敵な図やイラストを見てみましょう。この段階ではあまり理解しませんが、本の精神的な見方を与えてくれます(せいぜい1時間程度)
  2. 本を最初に通過し、一般的に非常に重い本または完全に新しいものを紹介する本の冒頭の章を徹底的に読みます。主題を扱っている本については、ささいなことだと思われる部分をスキミングまたはスキップします。この本の残りの部分については、かなり早く読みますが、それほど速くないので、ページをめくるだけです。(約一週間)
  3. 私が読んだすべての本がここまで読んでいるわけではありませんが、本が十分に興味深く有用であるとわかったら、適切に勉強します。ゆっくりとしたペースで本を読み、例の一部または全部を実行し、コードを試してみます。本が本当に良ければ(本に応じて1〜3週間)、ここで章全体をスキップすることがよくあります。
  4. 最後に、それを読み終えて他の本を読んでいるとき、相互参照、比較、物事の参照、閲覧などのために何度も何度もそれを浸します-私のお気に入りの本の多くは、単に集まるだけではありません本棚のほこり。

読むときにメモを取ることはめったにありません(ただし、コードサンプルのようなものを使用している場合は、紙の上で計画を立てることがあります)。私は自分の進歩を整理するために個人的なかんばんの使用を開始することも考えましたが、そのテクニックを使用することはまったくありませんでした。マインドマップは、私が考えているものの、めったにしないアイデアです。

人々に他にどのような方法がありますか?それらはどれほど成功していますか?時間の無駄だと感じる一般的に推奨されるテクニックはありますか?


私は個人的に著者が間違っていることを証明しようとするか、破綻するか、または理解できないコーナーケースがあるかどうかを確認します。IMO、あなたが学び、間違いをテストしない知識は、両刃の剣になる可能性があります。
うまくいけば

回答:


30

演習を行います。

ない場合は、いくつかを発明します。


3
そして、演習を行った後、独自の方法で独自のコードでそれらを再実装します。例は問題ありませんが、概念を完全に理解するための実世界の実装のようなものはありません。
ヒューゴ

+1:この回答の上部にこれを追加できます:「練習」。
クライム

最近の終わり頃のすべてのプログラミングの本は、短いプロジェクトを思い付きます。それを行うことは、誰もが進捗状況を追跡できる最大のベンチマークです。
-Venki

6

日々のプログラミングで、いくつかのテクニックをできるだけ早く適用してください。

学んだことをすぐに適用しないと、実際に必要になったときに再訪問する必要があります。


1
絶対に。また、本の中で提示されているものとは異なるコンテキストで何かを適用する場合にのみ、記憶から理解へと実際に入れ替わると思います。残念ながら、それは常に可能であるとは限りません...私が働いている開発マネージャーであるにもかかわらず、Prologまたは何でもそうするべきであるもっともらしい理由を考え出すことができるかどうか誰も本当に私に質問するつもりはありません物事を日常業務に持ち込むのが適切でない場合もあります。私はそれが個人的なプロジェクトの目的だと思いますが、累積学習の多くの利点を失うことになります。
FinnNk

@FinnNk-それは簡単だとは言わなかった;)それは私がWPFで現時点で持っている問題です。私は家でプロジェクトをやっていますが、それに費やす時間をあまり取らないので、私が知っていることを常に修正しなければなりません。
ChrisF

6

驚いたことをすべて強調します。将来、見つけやすくなります。

余白に広範囲に書き込みます。

誰かに本を貸す場合、理想的には異なる色で、これらの同じ規則に従うように人に頼みなさい。これにより、書籍の価値が高まります。


2

友達と一緒に行きましょう。本を読むことは、ペアプログラミングのような演習であると考えてください。このプログラミングでは、両者が互いに説明しようとします。(もちろん、上記の演習を行います)


1

実装する

参考としてアルゴリズムまたはテクニックの説明のメモリのみを使用して、自分で読んだ新しいアルゴリズムまたはテクニックをそれぞれ実装します。


1

私の注意不足のため、私は伝統的な最初から最後までのアプローチで学習しているときに集中するのが難しいと感じています。この章の最後までスキップして演習に進み、本とインターネットの組み合わせを参考にして問題を解決します。

「知っておくべきだから」という本を勉強するのではなく、目的を達成する手段として本の資料を使用しなければならない立場に身を置くと、概念の理解と練習がはるかに容易になります。

私の焦点の問題は、コード例を直接入力せず、代わりに自分の例を考えて、本のコードを使用してそれらを実現するのを助けることも意味します。学習プロセスで創造的であることは、私がそれを楽しんでいることを保証します。そして、私が作成したものの独自性は、私がしていることを覚えやすくします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.