辻(忠)です。
>辻さん,はじめまして.石井です.
(中略)
>確かにXPはリファクタリング前提ですね.
>でも僕は,リファクタリングがオブジェクト指向前提というのも,なんか
>変な気がしています.Extract Method や Rename Method なんか,
>別にC言語の関数に当てはめてもいいですよね.
確かにその通りだと思います。
ただ、共通コードを基底クラスへ移す場合のように、
オブジェクト指向だからこそ簡潔にまとめられる部分も多いと思います。
>リファクタリング本は,もちろんいい本だと思いますが,プログラマが
>普段やっていることを体系化しただけであって,根本的には「コードを
>きれいに書こう」っていうオブジェクト指向以前の話だと思うのです.
オブジェクト指向がその「コードをきれいに書こう」
の過程で出来たものの一つで、それがリファクタリングに向いてる、
という考え方はどうでしょう?
#単に著者が慣れてる言語という意見のほうが正しい気もしますが(苦笑)
>> 私も自分のソースに自己テスト用の関数を追加しようとしては
>> 「どうやって書けばいいんだろう?」
>> と悩んでばかりですから。
>> XPはこの辺りの方法を確立できる人向けの方法論である
>> と捉えられていのではないでしょうか。
>
>テストケースは書くのが難しいですね.これはいつも思っています.
何か「テストケースの書き方はこれが参考になる」という書籍等ってありますかね。
私のお気に入りは「ライティング ソリッド コード」と
「プログラマの打ち明け話」です。
>でも例えば,周りにスキルの高い技術者がいなかった場合,
>どういう戦略でいけばうまくいくと思いますか?
>
> 「まわりの開発者にオブジェクト指向を十分理解させ,スキルアップ
> させる」
>
>ということと
>
> 「まわりの開発者にテストケースとペアプログラミングを習慣付ける」
>
>というのでは,どっちが実現性が高いでしょう? それともスキルの
>高い開発者がいないから,XPは最初からだめで,
>
>「まわりの開発者が何も考えなくてすむようなできるだけ完璧な
>設計書を作って配布する」
>
>という開発スタイルで行くしかないのでしょうか?
やはり理想としては全員のスキルアップだと思います。
いや、これが難しいんですけどね。
だから「難しい」っていわれてるでしょうね。
それに対して、偏見かもしれませんが、
ペアプロは日本人の嗜好には会わないんじゃないでしょうか。
お互いの意見を交換する必要があるわけですから
相手がやる気のないタイプだと話しが進まなくなりそうです。
>「まわりの開発者が何も考えなくてすむようなできるだけ完璧な
>設計書を作って配布する」
これだと後で「どうやって完璧な設計書を書ける人間を揃えるか」
という問題になる気も・・・
でも実際の開発ではこの「完璧な設計書手法」が一番確実なんでしょうね。
なにせ一人プロフェッショナルがいればOKなわけですから。
以上です。
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
辻 忠一 mailto:tsujit@....jp
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/