市來健吾の日記

プログラマ、(元)物理屋(ナノテク、流体)

code complete 第23章 デバッグ


  • NOTE: 11/6/2010ツイッターで実況中継していた読書記録を読んだ日のエントリーとしてまとめたもの。

  • ichiki_k/status/28656604540
    月曜は、なんか乗らない。
    そういうときの単純作業ってことで、コードコンプリート下巻の読書の続きを最大1時間限定で。

  • ichiki_k/status/28656756703
    コードコンプリート下p89
    『「デバック」はエラーの原因を突き止め、それを修正するプロセスである。
    エラーの検出を目的とする「テスト」とは対照的だ』
    御意。
    デバッグは「作業」で、相対的に簡単。
    テストというか間違いを特定する方が、よっぽど技能を要する。

  • ichiki_k/status/28657065759
    コードコンプリート下p91
    『調査によると経験豊富なプログラマと経験の浅いプログラマに同じ欠陥を検索してもらったところ、所要時間にだいたい20対1の開きがあった』
    ふむ、出来る奴は普通の奴のずっと上を行ってるって、やっぱり本当なんだな。

    • cf. part5 ソフトウェアエンジニアのベストプラクティスと平均的なそれの差について

  • ichiki_k/status/28657494814
    コードコンプリート下p95
    『(経験豊富な)プログラマは、プログラムの修正方法を適当にかんがえたりしない。彼らは科学的な方法をとる』
    うーむ、科学的な方法をとれない「プログラマ」が、存在するんだねぇ。

  • ichiki_k/status/28657739075
    コードコンプリート下p108-
    『欠陥の修正、

    • 元のソースコードを保存する、

    • 正当な理由がある場合にのみコードを変更する、

    • 変更は一度に1つずつ』
    いや、当たり前のことばかりが羅列されている。
    プログラマとは恐ろしい人たちだ。

    • cf. p.143安全なリファクタリングの節。

    • つまりは、 version control system をきちんと使いましょう、ということだ。

      • cf. 第8章 防御的プログラミング