技術書の「写経」が続かない人のための段階的アプローチ

2 分で読めます
学習法プログラミング技術書

この記事は約 5 分で読めます。

写経が続かないのは意志の問題ではない

技術書のコードを手で打ち込む「写経」は、入門段階の学習法としてよく勧められます。ただ、実際に始めてみると数日で手が止まる、という話は珍しくありません。多くの場合これは意志の強さの問題ではなく、写経のやり方が原因です。

多くの人は、本のコードを最初から最後まで一字一句打ち込もうとします。しかし、文脈を理解しないまま長いコードを打ち込む作業は、ただの苦行です。学習効果が実感できないまま時間だけが過ぎ、やがて手が止まります。

写経が続かない 3 つの原因

1. 全部打ち込もうとする

本のコード例をすべて写経する必要はありません。重要なのは「自分が理解していない部分」だけを打ち込むことです。import 文や定型的な前置きの部分を何度も打ち込んでも、得られるものは少なくなります。ただし、そのモジュールをどこから読み込むのか自体が分かっていない段階なら、import 文も理解していない部分に入ります。線引きは「打つ前に、次の行に何が来るか言えるか」で決めると迷いません。

2. 動かさずに打ち込み続ける

10 ページ分のコードを一気に打ち込んでから動かそうとすると、エラーが出たときにどこが間違っているのかわかりません。この「打ち込んだのに動かない」体験が、写経への嫌悪感を生みます。

3. 写経の目的が曖昧

「写経すると身につく」という漠然とした期待だけで始めると、何を学んでいるのかわからないまま手を動かすことになります。目的が曖昧な作業は続きません。

4 段階の写経アプローチ

段階 1: 読むだけ (写経しない)

最初は本のコードを読むだけにします。ただし、ただ目で追うのではなく、「このコードは何をしているか」を 1 行ずつ頭の中で言語化します。変数名を見て「ここにユーザー一覧が入る」、関数呼び出しを見て「ここでデータベースに問い合わせている」と、コードを日本語に翻訳する練習です。

この段階で十分に理解できるコードは、写経する必要がありません。

段階 2: 部分写経 (核心部分だけ)

読んだだけでは理解できなかった部分、つまり「なぜこう書くのかわからない」箇所だけを打ち込みます。1 つの関数、1 つのクラス、1 つのアルゴリズム。範囲を絞ることで、集中力が持続します。

打ち込んだら必ず動かします。動いたら、1 箇所だけ変えてみます。引数を変える、条件を逆にする、ループの回数を変える。変えたときの挙動の変化を観察することで、コードの意味が体感的に理解できます。

段階 3: 写経してから改変する

本のコードを写経した後、そのコードを自分のやり方で書き直します。変数名を自分の命名規則に変える、関数の分割方法を変える、エラーハンドリングを追加する。プログラミングの入門書のコードを自分流にアレンジすることで、受動的な写経が能動的な学習に変わります。

段階 4: 本を閉じて再現する

最終段階は、本を見ずにコードを再現することです。完全に同じコードを書く必要はありません。本で学んだ概念やパターンを使って、同じ問題を自分の力で解ければ成功です。

再現できない部分があれば、そこが理解の穴です。本に戻ってその部分だけ読み直し、もう一度挑戦します。

写経の時間を確保するコツ

1 回の写経は 15 分を目安にすると始めやすくなります。朝のコーヒーを飲みながら、昼休みの後半に、寝る前の 15 分に。短い時間で 1 つの関数だけ打ち込む形にすれば、机に向かう準備が要らないので、間が空いても再開しやすくなります。

15 分で進む量は、写す対象によってかなり変わります。数行の関数なら動かして 1 箇所変えるところまで届きますが、複数のファイルにまたがるサンプルは 15 分では動くところまで行きません。この場合は 1 回で終わらせようとせず、区切りのいい場所でいったん保存して次回に回します。

大切なのは「毎日やる」ことではなく「やめないこと」です。3 日空いても、1 週間空いても、また 15 分だけ再開すればよいのです。1 冊のコードをいつまでにカバーする、という期限を先に決めると、空いた日の負債感で手が止まります。期限は決めず、理解していない箇所が減っていくことだけを進捗とみなすほうが続きます。

関連記事

まとめ

写経が続かないのは、全部打ち込もうとするからです。読むだけ → 核心部分だけ → 改変する → 再現する、の 4 段階で進めれば、無理なく続けられます。写経の目的は「打ち込むこと」ではなく「理解すること」。理解できた実感が、次の 15 分への動機になります。

共有:Xはてブ

この記事は役に立ちましたか?

関連用語

関連記事

「写経」の退屈さに耐えられない人のための代替メニュー

技術書のコードを手で打ち込む「写経」が続かない人へ。手を動かす学びを保ったまま退屈しにくくする、4 つの代替学習法を紹介します。

本のコードを写すだけでも力がつく理由

本のコードをそのまま打ち込む「写経」は、初心者にとって最も効果的な練習法の 1 つです。なぜ写すだけで力がつくのか、その仕組みを解説します。

写経のすすめ - 技術書のコードを手で打ち込む学習効果

技術書のサンプルコードを手で打ち込む「写経」の 3 つのレベルと、写経に向いている本の特徴、効果を最大化するやり方を紹介します。

「写経」「模写」「車輪の再発明」- 手を動かす学習法の使い分け

写経、模写、車輪の再発明。手を動かす学習法は複数ありますが、それぞれ鍛えられるスキルが異なります。目的に応じた使い分けを解説します。

本に出てくるサンプルコードは動かしてみよう

本に載っているサンプルコードは、読むだけでなく実際に動かすと理解度が段違いに上がります。動かし方のコツと、うまくいかないときの対処法を紹介します。

本を読んでもすぐにコードが書けなくて当たり前

本を 1 冊読み終えたのに、いざコードを書こうとすると手が動かない。これは普通のことです。読書とコーディングの間にあるギャップと、その埋め方を解説します。