1

問題: Web コンソールに、アプリケーションがインストールされているすべてのコンピューターのリストが表示されます。各マシンには、関連付けることができるいくつかの識別情報があります。部門名、チーム名などの単純な文字列。ユーザーがこれらの識別フィールドの名前を変更し、必要なだけ追加/削除できるようにする必要があります。これをどのように実装するのが最善でしょうか?

最初は、これをシングルトンとして実装できると思っていました。アプリケーションの開始時に、データベースから最後に設定された IDフィールド名を読み取り、文字列のリストのシングルトン インスタンスを作成できました。これは、ID 情報を表示またはアクセスする必要があるすべての機能に渡すことができます。このオプションの魅力は、ユーザーが ID フィールド名を UI から変更したり、フィールドを追加または削除したりした場合に、シングルトン オブジェクトを簡単に変更でき、変更が反映されることです。

しかし、私が望むものを達成するためのより良い方法があるに違いないと感じています。ユーザーが自由に変更できる情報がたくさんあり、それらを追跡する必要があるためです。

助言がありますか?

4

1 に答える 1

1

ORM のオブジェクトを使用して、アプリケーションでこの情報を維持および使用するだけです。多くの ORM はこの種のものをキャッシュする機能を備えているため、速度が低下することはありません。

私はこれを行うためにシングルトンを使用することはあまり好きではありません。単体テストは難しく、最終的にはデータベースに永続化する必要があります。

于 2009-12-09T23:15:15.887 に答える