サンプルプログラムを実際に自分で書くことを写経と呼ぶのは根本的にミスリーディングである

  • 写経の経験がないために「写経は基本的に前から線形的に筆もしくは修正可能な筆記具で書いていくもの」と仮定する。以下でこの仮定と矛盾する点を挙げる。
  • 変数宣言は「変数を使ったあと」に、数行戻って書き込むことが多い(C++など)。このようなことは写経では行わない。
  • 関数宣言も同様。
  • 写経と違い、プログラムには「現在書いたコード部品で実行可能か」や「数行のテストコードを挿入して実行して動きを確かめる」など実行に関わる手順が挟まれる。このようなことは写経では行わない。
  • 写経は終了後、文章の間に新しい経典の文句を追加することは行われない。ましてや経典の文字や数字を数文字だけ変更して何が変わるかを確認することなど恐らくご法度だろうと思われる。プログラムではそのようなことは日常茶飯事である。
  • スコープについての考え方も違う。写経にはクロージャの考え方がない。

 

類推による問題解決は、問題にいくつか共通点があって、片方に用いられる解決法がもう片方にも同じように適用できるときに効果を発揮する。その点から考えると写経というソリューションはほとんどプログラムにおける問題を解決しない。