Index: [Article Count Order] [Thread]

Date:  Sun, 18 Feb 2001 23:40:55 +0900
From:  yterada@....jp (Y.Terada)
Subject:  [XP-jp:01614] Re: XP で再利用できますか?
To:  extremeprogramming-jp@....jp
Message-Id:  <20010218141929910.AAA195@....jp@ginza>
In-Reply-To:  <v04210a01b6b5610e1d06@[192.168.0.240]>
References:  <v04210a01b6b5610e1d06@[192.168.0.240]>
X-Mail-Count: 01614

寺田@東工大 です.
上手さん,山田さん,コメントありがとうございます.


おかげで,XP 的な再利用が分かってきた気がします.
多分こんな感じだと思います.

    1.まずは動くものを!
    2.それからリファクタリングで抽象クラスの導出!
    3.結果的に再利用可能なものが残る!

できる限りの「シンプルデザイン」を extreme に追求した結果として残ったものが,
再利用可能なコンポーネントである,という考え方ですね.

XP の考え方(YAGNI など)から,何となく XP と再利用が相容れないもののような
気がしていましたが,そんなことはないということが分かってきました.上手さん
のおっしゃるように,パターンやコンポーネントのコミュニティと XP のコミュニ
ティの間に交流があること自体が,何よりの証拠ですね.


ところで,あまり詳しく読んではいないのですが,萩本順三氏の提案している Drop
 という開発手法では,再利用可能なコンポーネントを開発するサイクルを明示的に
示しています.

Drop のページ:
http://www.njk.co.jp/otg/Drop/Drop_v20/

簡単に言うと,

    ・ADG (Application Development Group)  アプリケーションを開発
    ・ODG (Objects Development Group)      ライブラリ/コンポーネントを開発

という2つのチーム/観点に分けて開発を行う,というもののようです.
私はこの考えに触れた時,(実務経験がないくせに)随分納得させられてしまった
覚えがあります.

以来,「アプリケーション開発」と「ライブラリ開発」という2種類の視点で見る
ようにしています.その視点で XP を見たとき,「XP は完全にアプリケーション開
発に焦点を絞った手法ではないだろうか」という感想を持ちました.

XP 的な再利用の追求も良いけれど,Drop の ODG のような,最初から再利用を念頭
においた開発,というものアリじゃないか,と思います.
XP 的にはこういう考え方は受け入れられないものなのでしょうか?