ごうぎさん、こんにちは。
赤坂です。
Shigeru GOUGI <ANC04864@....com> san wrote:
> ただまだ私にはわかっていない点があります。それは、XPが登場した当初からこれを
> 原則あるは重視している場合は、漠然とXPとは相容れないような感じをもっていたので
> すが、この感覚が正しいのかおかしいのかが今だによくわかっていないという点です。
> (勉強不足の可能性大ですf^^;)
(XPについて勉強&実践不足の)私もなんとなくそう感じています。
> というのも、当時も今も、少しずつスタイルや作業の質が変わりながらも、設計・実
> 装時ともに、責務を強く意識して設計(あるいは実装しながら設計)すると、自然にパ
> タンの適用やインターフェース間のプロトコルの設計、構造(仕掛けを含む)の設計を
> 伴ってしまうからです。そうでないとしっくりこないのです。そして、この責務を重視
> したアプローチはかなりしっかりしたモデリングやコアな部分の作りこみを自然と伴い
> 、そこから見るとXP的ではないように感じたということです。
じっくり考えないといけなくなりますからね。
ペアでさくっと「テスト&実装」のリズムが狂いそうですものね。
> 「責務を(強く)意識すると、XP的でなくなるのでは」という点、みなさんはどのよ
> うに考えられていらっしゃいますか? 責務を意識する際の適切な意識の仕方というのが
> あるのかもしれませんがまだ見えていません。(この辺りの問題とうまく付き合うバラ
> ンス感覚がないようですf^^;)
私は、そういう責務(自然な役割)を俊敏に適切に割り振ることのできるプログ
ラマ(開発者)がXPをドライブするものだと信じていました。
だから、XPが流行りだした当初は、メンバーの半分はベテランの上級プログラマ
でないと上手くいくわけないと考えていました。
ただ、XPでなくても、時間をかけて、責務を意識して分析したつもりでも、実際
にはなかなか上手く役割分担できているともいい難い状況だったりします。
結局は、時間をかけてもかけなくても(XPかどうかに関わらず)、不自然な役割
が見えてきたときにリファクタリングする必要があるわけですよね。
私個人の理想としては、私を含めたメンバーがこの「自然な役割分担」が出来る
ように、(例えば小学校の時のドリルの様に、)いつもモデリングの練習(勉強)
をして、特定の状況において役割分担のセオリーを身に付けておく(あるいは、
身に付ける努力を行う)必要性を感じます。
そうでないと、早く出来ても不自然なプログラムになってしまうと思うからです。
そういえば、ボーリングゲームですが、少し1人でやってみていたのですが、結
局、クラスの不自然さが気になってしまい、分析のモデリングに行き着いてしま
いました(^^;;
# やっぱり、私にはモデルを書かないでコードを書くには
# かなりの勇気(と度胸)が必要です。
ではでは。
--
赤坂 英彦 (Hidehiko AKASAKA)
akasaka.h@....com