Upgrade to Pro — share decks privately, control downloads, hide ads and more …

プログラミング写経のすすめ

 プログラミング写経のすすめ

Minoru Natsutani

October 17, 2024
Tweet

More Decks by Minoru Natsutani

Other Decks in Technology

Transcript

  1. 6 写経を取り巻く環境はよくなっている 写経はどんどんやりやすくなっている。 最近は難しめの内容でも最後まで行けるように工夫されているので頑張ってやろう 書籍のみの時代 CDROMとインタ ーネットの時代 書籍に全ソースコードが印刷されている。 規模的には小さめのプログラムのみ 例:ベーマガ(マイコンBASICマガジン)

    ソースコードがCDROMに入っていたり、インターネッ ト経由でダウンロードできるようになる。 サポートページの 時代 出版社や筆者のサポートページが増えていく。 正誤情報が早く正確になっていく。 Githubの時代 ソースコードがgithubで公開されるようになる。 書籍の内容とbranchが対応していて、大きなプログラム でも写経しやすい。
  2. 24 写経で学べること 定番ライブラ リの記述 _を使ってルー プ変数を使わな いことを明示 ループの前に空 リストを作り、 ループの中で

    appendする。 乱数を使うとき はseedを設定 グラフを並べる 書き方 気になる所があれば調べるが、一つ一つ公式ドキュメントを調べたりはしない。 動けばOKです。その代わりに毎日続ける。 なんかseed使ったなくらいが記憶に残れば十分
  3. 36 守破離の破を学ぶ 中級までで教科書的な書き方を学び、それに沿って書けるようになる。 次はそこから外れるケースを学ぶ。How toではなく、考え方を身につける。 エラーの通知方法を学べる。 中級まではエラーの処理が無かったり、文法の説明で終わる。上級ではエラー処理と実践的な通知方法を学べる。 ここにはエラーを無視するも入り、どんなときならエラーを無視して良いのかを学ぶ。 トリッキーな制御を使う時を学べる 単純なループになっていないときに、なぜ出来ないのかを考える。筆者が苦労したところなので解説がある。

    ややこしい依存関係を学ぶ どうしても綺麗に書けないところがでてきて、なんでそうなるのかを考える。 小さい変更の影響範囲を学ぶ。 一部の機能を変更したときに、どこまで影響があるのか。想像していたより変更が少なかったり、大きかったりを 体験する。 実践的なテスト技法を学ぶ 最小限の労力で、上手くテストする手法を学ぶ。 XUnitやPytestのようなテストのフレームワークだけがテスト手法では無い。