2016-09-29 11 views
0

私はADFを初めて使用し、.Netバックグラウンドから来ています。私の目標は、コードがカプセル化され、ビジネスプロセスを表すように、アプリケーションのDDDに移行することです。その計画はCQRSを使用して私のドメインモデル/コマンドをクエリと表示に使用するVOと分離するように促します(ESSまたはSOAコンポーネントを使用してイベントを個別のデータストアにプッシュしますが、最初は単一のDBを使用します)。私はADF、賛否両論で、このの実装上の任意の情報を見つけることができませんでした Oracle ADFでのCQRSの実装

など

私が知りたいのです: は私がしようとしていますがADFの世界で理にかなっていますか?なぜ/なぜか? この場合、ADFを使用する際にどのような問題が発生する可能性がありますか。

答えて

0

オフハンドですか?私はあなたがこれを工夫しすぎていると思う。 CQRSで解決しようとしているADFアーキテクチャーの問題から始めます。

ADFには4つのスタックがあります - ADF BCはデータ・スタックです - 表/ビューに基づくEO/VOおよびSOAサービスと統合する必要がある場合はWebサービスに基づいてVOを作成できますADF Facesはサーバーによって生成されますUIレイヤー。 ADFコントローラは、ページ間のナビゲーションを処理します。 ADFモデルは、ADF BCとADF Facesの間に位置するデータ抽象化レイヤーであり、レイヤー/ティアを分離したままにして、直接レイヤーなしでビューレイヤーによるデータの移動と操作が可能です。

VOを操作するには、VO行セットのイテレータを参照するか、カスタムJavaビヘイビアをVO(選択したデザインではない)またはアプリケーションモジュール(自分の選択)で直接公開します。 UIとモデルとデータレイヤの分離を維持しながら、ボタン/リンクまたは直接実行を介してUIに公開することができます。 このコードはすべて、JDeveloperのウィザードおよびツールおよびエディタによって生成され、管理されます。したがって、カスタムコードだけを追加する必要があります。

したがって、ADFは、Model-View-Controllerの設計パターンの形式を実装しています。 CQRSでさらに別の抽象レイヤーを追加することで、解決したい問題がADFには分かりません。 。

+0

私は、大規模な組織全体でパフォーマンスとコード構造を解決しようとしています。私が考えていることは、コマンドロジックコードを分離することと、より速いクエリVOを持つことです。 –

+0

また、処理の多くは非同期であり、別々のプロセッサで行われるため、大部分のUIパターンの利点は実際には得られません処理。また、私はプロジェクト全体を横断するいくつかのパターンを持っているので、それらを抽象化してテストの範囲を広げたいと思っています。 –

関連する問題