本を読むときにエクササイズをしますか?[閉まっている]


14

本(プログラミング関連の本)から学習するときに実際に何人の方がエクササイズをしているのか、私は現在C ++の本を読んでいます。ほとんどの人はこれをしますか?または、彼らは本全体を読んで、困難に見えた練習に戻りますか?



4
読書中にエアロバイクに乗ることが好きで、学部生の間に身体運動や勉強をしやすくしました。私はここで身体的運動が前後関係にあるとは思わないが。
クリス

申し訳ありませんが、他の一部の人と同様に、私は教科書で演習を行ったことがありませんでした。裏の回答を見て、彼らが言ったこととその理由を理解しようとしました。
ブハケシンディ

これがStackOverflowから移行され、Programmers.SEで即座に閉じられたことを愉快な人はいないでしょうか?これはソビエト規模の官僚主義です!XD
11年

回答:


17

演習のソリューションを実際に入力して実行すると役立つことがわかりました。最初の試行で答えが得られることもあれば、最初に見たときより少し複雑になることもあります。動作するコードが見つかるまで、何が欠けているのかを知ることはできません。

デバッグの練習ができれば、自分でエクササイズを入力することの大きな利点の1つです。新しい言語と新しい環境の場合、間違いを犯すことは避けられません。しても、最も単純な問題の解決策を取得作業することをお勧めします。


5

新しい言語の構文に頭を包み込むのに苦労している段階にない限り、些細な演習をスキップする傾向があることがわかります。彼らは、考えさせる刺激的な挑戦を提供するのと同じくらい、あなたに何か練習するものを与えるためにそこにいます。


4

本、コンピューター言語、または人間から言語を習得するのは非常に難しく、実践せずに習得することはありません。

私は通常、例題で切り取りと入力を行うと、より多くのコンテキストが得られ、簡単に見えるものであっても、コンパイラがどのように動作するか、実際に言語。

一方で、すべての演習を行うには時間がかかるため、新しい言語に関する本を完成させることはほとんどできませんが、少なくとも各トピックで物品税を払うようにします。

もう1つの大きな援助は、「トーステンミュラー」が示唆しているように、実装を開始するプロジェクトがあることです。Bツリーのソートなどは、実装するのが常に楽しいです。


4

それは本に依存します。たとえば、K&Rのパズルは非常に壮大で有益であり、The C Answer Bookというもあります。

Knuthを読んでいる場合、鉛筆と紙と一緒に読んでいない限り、実際には何も得られません。もちろん、Knuthの問題のいくつかはよく知られている未解決の問題であるため、それらすべてを取得することは期待できません。

しかし、インストラクターとして、私は他の多くの優れた本の多くの演習がただひどいことを発見しました。それらのいくつかは単なるBSであり、最後の最後でタックされているようです。その結果、クラスで問題を割り当てるとき、私は自分で作らなければなりません。適切な本と適切な問題に焦点を合わせている限り、あなたはそれから多くを得るでしょう。目標がC ++の学習であっても、K&Rで行うことをお勧めします。


+1 K&Rについては(非常に速いペースで)読み、ほとんどのエクササイズを行い、実際に各エクササイズで何かを学んだように感じました。他の本は、私が選んで選んだようです
アダム

2

面白くて挑戦的に見えるものだけ。私が答えを知っていれば、それをタイプするのにあまり使い道はありません。

ほとんどの場合、新しい言語や技術に関する本を読むとき、私は自分で実装しようとする小さなプロジェクトを持っています。ConwayのLifeゲームで始まり、数独ソルバーが続きます。これには、他の言語で既に解決しており、結果を比較できるという利点があります。

現時点ではラケットを学んでいますが、構文のいくつかの詳細に多少の困難があるため、慣れるために通常よりもはるかに多くの演習を行っています。


1

単純なエクササイズが存在する場合でも、最も単純なものを頭の中ですばやく行います。また、演習の1つを実装する方法のアイデアがあるかどうかを確認しようとしますが、ほとんどの場合は実装しません。実際に実装する理由は、コンパイラがあなたの心よりもはるかに独創的であり、言語もよりよく知っているので、本当に正しいことを確認するためです。しかし、演習を行う理由は、最新の章から得た知識を繰り返し、実際に内容を確認するためです。

運動が存在しない場合、私は自分でいくつかを補います。また、少なくともこの章の内容(コードをVimに入力する、実行する、変更するなど)を使用しようと常にしています。

後で、または読書セッションの最後にいくつかの演習を残すことがあります(たまたま複数の章を読む場合)。

演習は学習を支援するためにあり、その支援が必要なときに使用します。


1

書かれていることを理解して覚えていない限り、本を読むことは時間の無駄です。練習はあなたがすることを確認します。それに、時々エクササイズをするのは楽しいです!


1

いいえ。私は本のコードを読むだけで、時々それさえしません。必要だとは思わないでください。結局のところ、コードの書き方を学ぶために本を読むことはありません。私は本を​​読んで概念を学び、新しいアイデアを得る。


0

それは私が経験している本に依存します。ただし、通常は、これまで遊んだことのない機能に遭遇した場合は、入力してサンプルを実行します。


0

私はこれらのエクササイズでワークアウトすることを好みます。これらの質問により、私たちはより多くのことを考え、分析することができます。また、この演習の結果は、私たちが実際にどれだけよく理解したかを示しています。よく理解すれば、後で覚えるのに必要な労力が減ります。


0

私が新しい言語を学んでいて、その言語で多くの仕事をすることを知っているなら、私はそれぞれのエクササイズごとに果敢に行います。これを行うことで、言語を「吸収」し、基本的な構文が強くなります。また、この方法では、コーディングを学ぶだけでなく、特定の言語で「考える」こともできます。2回目に修正するときは、運動をする必要はないかもしれません。

同時に、IMOはすべての言語で同じではありません。たとえば、C / C ++の場合、SQLを習得するのにそれほど苦労する必要はありませんでしたが、C / C ++の場合、SQLを習熟するために少なくとも4回(大学のコースを含む)練習しました。


0

決して。しかし、私は過去の経験(言い換えれば失敗)の大部分から引き出されたソリューションで何かを書き、それを解決しようとします。私はそれを既存の文脈に関連付けているので、これは本当に新しいものを私の脳に引き込むようです。


0

少なくとも良い本を最初に読むときはそうではありません。ほとんどの場合、次の章の内容を学ぶのが待ちきれないからです。


0

番号。

一部の人々は実際に本を読んで練習をする規律を持っていますが、私は彼らの一人ではなく、私は多くが同じ方法であると疑っています。

本学習のモデルは時代遅れのものだと思います。私はオンラインで講義/研究室を見つけて、それを行います。

たとえば、Google Code Universityコースを受講してPythonの基礎を学びました。

最終的に、実世界での経験に代わるものはありません。重要なのは、あなたが実際に教材を学習することであり、それをどのように行うかではありません。私のアドバイスは、自分を罰するのではなく、最も早く/最も簡単な方法でそれを行うことです。

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