特定のデータベース行を ID で参照するか、コードから参照するか、データベース内のクラス名を指定することを意味します。例:
というデータベース テーブルがありますSocialNetwork
。ルックアップテーブルです。アプリケーションは、書き込み、書き込み、または削除を行いません。主にデータベースの整合性のために存在します。シバン全体が次のようになっているとしましょう。
SocialNetwork table:
Id | Description
-----------------------------
1 | Facebook
2 | Twitter
SocialNetworkUserName table:
Id | SocialNetworkId | Name
---------------------------------------------------
1 | 2 | @seanssean
2 | 1 | SeanM
コードには、Facebook ユーザーに対して実行する必要がある特別なロジックがいくつかあります。私が通常行うことは、コード内で列挙型またはいくつかのクラス定数を作成して、次のように簡単に参照できるようにすることです。
if (socailNetwork.Id == SocialNetwork.FACEBOOK ) // SocialNetwork.FACEBOOK = 1
// special facebook-specific functionality here
これは、ハードコードされたデータベース ID です。ルックアップテーブルを参照しているだけなので大した犯罪ではありませんが、データとロジックが明確に分かれていないのが気になります。
私が考えることができる他のオプションは、データベース内のクラスまたはデリゲートの名前を指定することですが、データとロジックの間の分割を壊しただけでなく、データとロジックの分割を壊したため、IMO はさらに悪いことです。今の言語。
私は何もないことを大騒ぎしていますか?