最も普遍的で最良のアプリケーション構成管理方法は何ですか?「適切な構成管理」を行うために、これらのプロパティが必要です。
- 使用可能なすべてのプロパティとそれらのデフォルト値のリストが1か所にあります。
- アプリユーザーが1か所で変更できるプロパティのリスト。
- 特定のプロパティを取得すると、その値は2番目のリスト(ユーザーが変更可能な構成)から返されます。存在しない場合は、最初のリストから返されます。
これまでのところ、1番目のリストをオブジェクト(より具体的にはdict
)としてハードコーディングし、アプリユーザーが一部のプロパティを簡単に変更できるようにするために.conf
使用するファイル(2番目のリスト)を記述し、パブリックメソッドを記述しました。 ConfigParser
configオブジェクトを使用して、その名前でプロパティを取得するか、プロパティがない場合は例外を発生させます。結局、1つのオブジェクトがすべてのもの(ファイルの解析、例外の発生、プロパティのオーバーライドなど)の管理を担当していましたが、多かれ少なかれ同じことを行う組み込みライブラリがあるのか、それとももっと良いのか疑問に思いました。すべてのKISS、DRY、およびその他の原則を考慮に入れた構成を管理する方法(私はこの方法で常に成功するとは限りません)?
前もって感謝します。