石橋秀仁です。なひさん、お返事ありがとうございます。

"NAKAMURA, Hiroshi" <nakahiro / sarion.co.jp> wrote:

> なひです。

> > あ、ぼくが書いたのはone-liner限定の話です。
> > ファイルに書く場合は、ぼくも同じような感じでやっています。
> 
> 大変失礼しました。昔の議論(メソッドチェイン嫌い)を思い出し、
> 自分の言いたいこと書こうとするあまり、石橋さんの論点を見失っていました。

ぼくもそういうことよくやります (^^;;;
なひさんの主張には賛成してます。


> Subjectも「一行野郎」ですね。。。m(..m

ぼくもそういうことよくやります (^^;;;


> > > 結局「あとからいじりにくい」という点で、デバッグとの相性と同じことかも。
> > 
> > 賛成です。同感です。RubyUnitを使ったTFPをやっているので、
> 
> 素晴らしい。。。なひはどうもTest First (Programming)に馴染めません。
> *なひにとっては* *いまのところ*
> XPの「テスティング」といわゆる従来のテストを分離してやる手間のほうが
> 気になります。「テスティング」だけ先にやるのは、
> 時間ばかりかかってちっとも楽しくない。

そうですね。「テスト」という響きが楽しくないですしね。


> いわゆる従来のテストまで先に一緒にやろうとするとリズムが崩れる。

これは、やってみた実感では、むしろリズムがよいかな?と。

リファクタリングでは、本当に「*動作を変えず*に品質を
向上させる」というのが達成されているかどうかが問題です。
コードを変更したらRubyUnitでテストを走らせる、と決めます。
最近では、エディタを終了すると勝手に手が動いてテストを開始します。
それで、エラーが一つでもあれば、そのリファクタリングで
問題が起こったと分かります。けっこうリズムよくなります。

リファクタリングにおいては、テストはたいした手間ではないと感じてます。

リファクタリングで、クラスやメソッドを増やさない限り、
テストを増やす必要はありませんよね。増やすケースとしては、
メソッドのなかの処理を新しいメソッドに移動したりする場合です。
そのメソッド用のテストが必要になります。しかし、その場合は、
もとのメソッドのテストから、対象の行を新しいテストのなかに
カットアンドペーストすれば済みます。


ただし、ご指摘のようなリズム崩れは起きる場合があります。
それは、上記のようにクラスやメソッドを分割するケースや、
新規にクラスを書き始めるケースなどです。そのクラスを
実装する前に、テストケースを書きますから、直接書くよりは
リズムが悪いと思います。

それでも開発工程全体を見てみると、リズムはよくなっているのかな、
と思います。きちんと測ったりしていないので憶測ですが・・・


> デバッグに慣れちゃってるのと関係あるかもしれませんねー。
> Embrace Changeは大好きな言葉なので、トライは続けますけどね。

これはよい言葉ですよね。

ぼくはこういう「よさげ」な概念を聞くと、
まず疑わずにやってみてから判断するタチです。
XPやTFPについては、やってみて正解でした (^^)

それでは。


--
石橋秀仁 hideto-i / rr.iij4u.or.jp
i-mode:  i.sys / docomo.ne.jp
ICQ#: 83329246  MSN: hideto_i / hotmail.com
Do you like jazz? jazzbar / freeml.com