2011-02-01 4 views
1

Gmailのようなラベリングシステムを実装する方法はいくつかあります。基本的に私は最低レベルのリソースを持っており、そのリソースのためのいくつかの組織グルーピングをラベルの形で提供したいと思います。誰かがそのようなものを実装していると私はあなたの意見を聞きたい。私の考えは、リソースインスタンス内にList<Label>を持つことです。ラベルやリソースに基づいて非常に高速な検索を行うには、効率的な仕組みが必要です。Gmailのようなラベリングシステム

おかげ ディミトリス

答えて

5

いや、私はそれをしないだろう。私は、2つの辞書、Label -> HashSet<Resource>Resource -> HashSet<Label>を維持すると思います。これにより、双方向の高速検索が可能になります。明らかにこれをカプセル化する必要があります。

また、何をしても、Resourceに埋め込むべきではありません。それはリソースであり、ラベルを維持していますか?いいえ、責任は一切ありません。

+0

私は、2つの辞書を保持する別のクラスマネージャーについて話しているので、ラベルとリソースのインスタンスの外側にルックアップ機能があります。 – Dimitris

+0

@Dimitris:はい。 – jason

+0

私の質問にお答えいただきありがとうございます。 – Dimitris

関連する問題