1. ホーム
  2. design-patterns

[解決済み] コンフィギュレーション設定の問題に適用できるデザインパターンはどれか?

2023-05-08 21:21:10

質問

大規模で複雑なソフトウェア製品では、構成可能な設定を管理することが大きな苦痛になります。私が見たことのある、この問題に対する 2 つのアプローチです。

  • システム内の各コンポーネントに、構成ファイルまたはレジストリ設定から独自の設定をロードさせる。
  • 設定可能なすべてのシステム設定をロードする設定ローダークラスを持ち、各コンポーネントにその設定のために設定ローダーを照会させる。

これらのアプローチは両方とも私には間違っていると感じます。

問題を単純化するために使用できるデザインパターンはありますか? 依存性注入のテクニックを利用するようなものがいいかもしれませんね。

どのように解決するのですか?

クエリの設定、読み込み、保存のためのインターフェイスを作成したい。 依存性注入を使用することによって、私はそれを必要とする各コンポーネントにこれを注入することができます。

これにより、設定ストラテジーを置き換えるという点で柔軟性が得られ、すべてのものが動作するための共通のベースが得られます。 私は、単一のグローバルな設定ローダー (あなたの選択肢 2) よりもこれを好みます。