- 名前
プログラム可能なコンフィグレーション
- 目的
コンフィグレーション対象を利用するプログラムを開発中に、コンフィグレーションに手間をかけないですませる。
- 動機
アプリケーションの開発者全員が、利用するサーバーやフレームワークを熟知しているとは限らない。コンフィグレーションがファイルで提供されている場合、ファイルに記述する内容は複雑で、慎重な調整が必要とされることもある。
アプリケーションの動作にコンフィグレーションをいじらなくてはならない場合、開発やテストそのものよりも、正しくコンフィグレーションファイルを記述することに時間をとられることがある。
また、コンフィグレーションのいろいろなパターンを用意しておく必要があるとき、コンフィグレーションファイルを複数用意してそれぞれを変更することがある。この場合、全体に影響がある変更があると、すべてのファイルを修正しなくてはならない。
コンフィグレーションをプログラムから変更できるようにしておけば、コンフィグレーションファイルすべてを理解する必要がなくなる。またデフォルトのコンフィグレーションに対して部分的な変更を加えることも簡単になる。
- 適用可能性
以下のような場合に有用。
-
- 開発者各自がコンフィグレーションしなくてはならないが、コンフィグレーションファイルが複雑で、誰でも気軽に作成できない場合。
- テストケースなどでコンフィグレーションを一時的に変更したい場合。
- 構造
- Configration
- コンフィグレーションの内容を保持し、参照・変更できる。
- ConfigrationFile
- コンフィグレーションファイルを読み込んで、Configrationクラスを使って内容を反映する。
- Application
- Configrationクラスを直接使って、必要なコンフィグレーション内容を設定する。