【10】ツールの選択は慎重に

ジョヴァンニ・アスプローニ(Giovanni Asproni)

 昨今では、アプリケーションをまったくのゼロから開発することは稀です。通常は、既存のツール——コンポーネント、ライブラリ、フレームワークなど——を組み合わせて作ります。それは次のような理由からです。

 ただ、既存のツールを適切に組み合わせることは、実は容易なことではありません。事前に十分な検討が必要でしょう。その際には、以下のようなことに留意すべきです。

 ここまで挙げてきたような問題の発生を防ぐために、私は「まずは最低限のツールだけを導入する」という戦略を採っています。よく検討して、どうしても必要と判断したものだけに絞り込んで導入するのです。通常、初期の段階で重視するのは、「インフラ関連の低水準プログラミングの手間を省き、問題の発生を防ぐ」ということです。たとえば分散アプリケーションを開発するなら直接ソケットを扱うのではなくミドルウェアを利用する、ということです。その後も必要になったタイミングで新たなツールを追加していきます。新たにツールを追加する際には、ツールをビジネスドメインオブジェクトから隔離するためのインターフェースやレイヤを導入すれば、ツールの変更が必要になった時の手間が最小限に抑えられるでしょう。最後に、ここまで話してきたアプローチには良い副作用があります。当初の予測よりも導入するツールが少なくて済み、アプリケーションも肥大せずに済むのです。