Diary?::2006-05-22

00:25

最近になって doctest を書くようになった。 doctest ってのはドキュメンテーション文字列から Python コードらしき部分を見付けて実行するという機能で、 Python の標準モジュールにも含まれている。というわけで doctest の使いかたは Python のサイトのドキュメントを読め。

じゃあこの doctest を使ってみて何が嬉しかったかというと、今まで以上にドキュメントの質が上がったということだ。テストコードというのは同時に優れたサンプルコードでなければいけないと俺は思っているのだが、 doctest では自然とそうなるように仕向けられる。だってそのコードは、テストだけではなく pydoc としても使われるのだから。そしてそこには人間の読むドキュメントも一体となっているのだ。

そして最悪、サンプルコードさえあれば何とか試行錯誤できる場合は案外多い。大して中身のないドキュメントを長々と書くよりは、サンプルコードをスパッと書いた方がいいしね (両方あるのが理想であり当然なのだけど) 。

というわけで最近は次のような流れでプログラミングを行っている。

  1. とりあえず関数なりクラスなりを書く。
  2. doctest 可能なドキュメントを書く。
  3. 必要ならモジュールレベルでの doctest を書く。
  4. それらのモジュールを統合したテストを書く。

しかしズボラな俺がよくもまあこんなことをするようになったもんだ。テストファーストだのなんだのクドクドいわなくても、言語や標準ライブラリにそういう機能があれば自然と使い出すものかもな。

19:51

今日の晩ごはんはチキンカレー。明日の朝ごはんもチキンカレー。明日の晩御飯もチキンカレー。明後日の朝ごはんもチキンカレー。明後日の晩御飯もチキンカレー (ここまで) 。

要約: カレーを作りすぎました。

どうでもいいが、会社の食堂が相変わらず値段ほどにはおいしくない。しかも俺の胃袋からすると明らかに分量が多い。えっ、残せ? もったいないオバケが出るだろ!

今度から弁当を作っていこうか悩み中。果たしてそこまで余力があるものか。

23:59

プログラマに必須の技能: 箸でポテトチップスを食べる。出来れば利き手ではないほうで。

Written by Kuwata Chikara
Creative Commons