データベースからデータを取得し、オブジェクトの使用中の一般的な名前はありますか?
-
19-09-2019 - |
質問
私は、我々のデータベース内のデータにアクセスするために私たちのベンダーの1が使用するためのAPIを開発していると私は私のクラスに名前を付ける必要があります。私はそのようなレトリーバー、アクセサ、およびコントローラ(例えば。TimesRetriever、TimesAccessor、TimesController、など)のような名前を考えています。これらのクラスは、私達のデータベースでは(私が要約されますことを)データへの読み取り専用アクセスを提供します。一般的に、私が説明してきた何のための命名規則に合意があるか。
解決
Martin Fowler氏(www.martinfowler.com)が質問のこれらのタイプのための良い情報源です。以来、あなたは本当にデザインパターンについて話してます。
私の最高の推測では、リポジトリのパターン( http://martinfowler.com/eaaCatalog/repositoryだろう。 HTML を)。
サイトから:
概念的には、リポジトリ オブジェクトのセットをカプセル化 データストアに保持し、 操作は、それらを介して実行しました より多くのオブジェクト指向のビューを提供 永続化層のます。
あなたがやろうとしているかのような音ます。
他のヒント
簡単な提案が...なぜ「データベース」と呼んでいませんか?それはあなたが得ることができるよう明確です。それを読んだとき、あなたはすべてのデータをすぐにどこから来ている知っているよ。
私が最も一般的に見てきた人々は、「マネージャー」の接尾辞を使用しています。私はまた、just_wesにより示唆されるように、人々は、データベースを使用し見てきました。例:TimesManagerまたはTimesDatabaseあるいは単にデータベース
。これは
LLBLGen Proで "アダプター" と呼ばれていますこれは、デルファイのDataSnapとJava SDOでのプロバイダと呼ばれています。
私は一般的に合意された命名規則がないと思います。
私は、プロバイダまたはレトリバーを使用する傾向がある。
「コントローラ」は別の何かを意味するために使用されます。 「アクセサ」は、多くの場合、DBアクセスクラスに使用されます。この種のもののために、私は一般的にレポートと考えます。言い換えれば、あなたはDBへのフルアクセスを与えていない、あなただけの特定の選択(私は仮定)に基づいて、それからの報告書を見せています。出力形式は、(それはCSVだ場合は特に)ことができますのであれば、私はレポートを実行するためのAPIとして、プロジェクト全体を言い換えます。それができないなら、私は「アクセサ」で行くと思います。