送り先が間違ってたので再送します^^;
辻さん,はじめまして.石井です.
> XPはリファクタリングあってこその手法であって、
> そのリファクタリングについての方法論自体が
> オブジェクト指向言語を前提として作られている訳ですから、
> 「XPはオブジェクト指向技術を最大限に利用する」
> と言ってもおかしくはないと思います。
> 逆に言えば、オブジェクト指向以外でリファクタリング手法を確立できるなら
> これは否定できる訳です。
> #ただ、現状ではそれがないと言うだけで。
確かにXPはリファクタリング前提ですね.
でも僕は,リファクタリングがオブジェクト指向前提というのも,なんか
変な気がしています.Extract Method や Rename Method なんか,
別にC言語の関数に当てはめてもいいですよね.
リファクタリング本は,もちろんいい本だと思いますが,プログラマが
普段やっていることを体系化しただけであって,根本的には「コードを
きれいに書こう」っていうオブジェクト指向以前の話だと思うのです.
> 私も自分のソースに自己テスト用の関数を追加しようとしては
> 「どうやって書けばいいんだろう?」
> と悩んでばかりですから。
> XPはこの辺りの方法を確立できる人向けの方法論である
> と捉えられていのではないでしょうか。
テストケースは書くのが難しいですね.これはいつも思っています.
でも例えば,周りにスキルの高い技術者がいなかった場合,
どういう戦略でいけばうまくいくと思いますか?
「まわりの開発者にオブジェクト指向を十分理解させ,スキルアップ
させる」
ということと
「まわりの開発者にテストケースとペアプログラミングを習慣付ける」
というのでは,どっちが実現性が高いでしょう? それともスキルの
高い開発者がいないから,XPは最初からだめで,
「まわりの開発者が何も考えなくてすむようなできるだけ完璧な
設計書を作って配布する」
という開発スタイルで行くしかないのでしょうか?
規模の大きいシステムでは,一番最後の解が現実的なんでしょうが,
XPは小規模開発って最初から限定してますし.小規模な開発という
前提で皆さんの意見を聞きたいところです.
では.