1

SQL (MS SQL Server 2008 R2) に多くのロジックが実装されたアプリケーションを作り直しています。論理的には、ビジネス ロジックは多くの異なるコンポーネントに分割できます。

現在の実装は非常に構造化されていません。各プロシージャ、関数、ビューはどこにでもアクセスしてデータを書き込みます。JavaEE アプリケーションの場合と同じように、アプリケーションを小さな単位で編成したいと考えています。パブリック インターフェイスを備えた小さな JAR ですが、永続化レイヤーとビジネス ロジックの実装は隠されています。

「プライベート インターフェイス テーブルまたはストアド プロシージャ」のほかに、「パブリック インターフェイス テーブルまたはストアド プロシージャ」を定義するデフォルトの概念はありますか。最初のステップでは、命名規則を使用するだけで十分な場合があります。でも、もっといい方法があれば教えてください。

[編集] MS SQL Server のみを使用するように制限されているため: モジュールごとに同じ DB 内で個別のスキームを定義するという概念についてどう思いますか?

4

1 に答える 1

0

データベーステーブルとプロシージャのアクセス制御以外にこれに相当するものはありません。これは、オブジェクト指向システムが可視性を整理する方法とは異なります。

最良のシナリオは、sprocからアプリケーション層にできるだけ多くのロジックを移動し、そこで混乱に対処することです。これが発生する可能性が低い場合は、関数をリファクタリングして、(論理的に)単一の操作のみを実行するようにすることを検討します。必要に応じて、同様のsprocを1つにグループ化し、アプリケーション層がそれらの機能を介してのみ動作するようにすることができます。

于 2012-07-23T05:58:38.743 に答える