2009-03-18 16 views
1

私は関数とアクションの代理人を格納するために多くの辞書クラスを使用しているアプリケーションをラップしています。私は今私のプロジェクトを少しリファクタリングしてコードを掃除しています。私の質問は、あなたのプロジェクトの構造のどこにあなたの辞書のクラスを置くかですか?今、それらは呼び出し元のクラスのソースファイル内にありますが、すべての辞書を格納するための別個のソースファイルを作成する必要があるかどうかは疑問です。これが十分な情報であることを願っています。そうでなければ私を許してください。ありがとう。プロジェクト構造の辞書

答えて

1

私は、コードの残りの部分と同じ方法で辞書を編成します。関連する機能をグループ化し、無関係の機能を分離します。

さらに、委任辞書がどのように使われているかを見ていきたいと思います。使用パターンがの場合、代理人を取得して直ちに呼び出すには、があれば、その動作を「do-the-right-thing」メソッドでクラスにラップします。そのような各クラスは、それが表すドメイン概念によって命名することができます。

たとえば、米国の州の略語を売上税の計算にマップした辞書がある場合、そのすべてを州コードと小計を引数とする「売上税の計算」メソッドを使用してクラスにラップすることができます。正しい計算スキームを検索するために辞書を使用しているという事実は、隠れた実装の詳細になります。

1

通常、Dictionaryクラスはそれ自体(ライブラリ)のものであり、さまざまなユーザーがそのインスタンスを作成します。

必要に応じて特殊化/サブクラス化することがありますが、これはまれである必要があります。

多分あなたは本当に自分自身に「なぜ私は複数の辞書クラスを持っていますか」と尋ねるべき質問でしょうか?

関連する問題