青色本

青色本 (ちくま学芸文庫)

青色本 (ちくま学芸文庫)

読み返していた。悪戦苦闘の様があり、 読みにくいんだけど、日常で使える教訓がある。

日常の中で時々使われる問い。What 「○○とは何か」

この問いに答えるのに、一般的な言葉の定義をしようとする代わりに、
「○○の言葉を普段はどのように【使用】しているのか?」を問う。


例えば、「テストとは何か?」問いに対して、一般的な定義で答えるのではなく、「「テスト」という言葉を、普段はどのように【使用】して、ある一定の秩序ある振る舞いを成立させているのか」の問いに置き換えてることになる。
おそらく、チームごとにテストの意味は異なっている。「テスト」を使って、それぞれの体系である秩序を成立させている。ちなみに、異なる背景をもった人たちが集まって議論する際は、議論を混乱させるために「テスト」という言葉が「使用」される場合もある。


青色本を読み返していたとき、プログラミングのシーンを連想しながら読んでいた。

Whatの問い
インタフェース、クラス、属性、メソッドを定義する一般解で答えようとする代わりに、テストコードを書きながら使用例で答えようとする。

テストコード=What, プロダクションコード=Howの説明はわかりやすいんだけど、私の感覚だと、うまく説明できていない箇所があり、なんだか嫌だなぁと思っていたのだが、「使用(use)」という言葉の使い方を知って少しすっきりした。

他人が、テストコードを書く=What, プロダクションコードを書く=How の説明をしているとき、私は脳内では、
テストコードも、プロダクションコード、どっちもHow。
テストコードは、どのように使用できるかの例を記述している(外側のhow.)Whatと重なる領域がある。
プロダクションコードは、どのように動くかのメカニズムを記述している(内側のhow)

ちょっと複雑に置換して理解している。

自分の思考パターン、理解しにくいねw