1

私のロジック クラスでは、Web サービスへの ajax 呼び出しがあり、Cookie にデータを保存し、URI クエリ文字列から情報を取得し、ユーザーにメッセージを表示します。

これらの依存関係からロジック クラスを分離するためのベスト プラクティスは何ですか?

私の環境: 私は SharpKit (C# から javascript コンパイラー) で開発しているので、c# で書いています。最終的に私のコードは純粋な JavaScript にコンパイルされ、ブラウザーでのみ実行されます (サーバー側のコードはありません)。

最初は、それらを 2 つのリポジトリとしてラップすることを考えていました。1 つは ajax 呼び出し用、もう 1 つはブラウザのすべてのやり取り (Cookie、URL、メッセージなど) 用です。

現在、次のようになっています (DI なし)。

public class CustomersScreenController
{    
    public CustomersScreenController(
        Services services,
        CookieHelper cookieHelper,
        UriHelper uriHelper)
    { ... }    
}

すべてのブラウザのものを 1 つのレポに入れるのは理にかなっていますか? 一方、Cookie とクエリ文字列は別のデータ ソースのように思えます...

どう思いますか ?

別の質問: このようなアプリをどのようにレイヤー化しますか?

ajax 呼び出しはデータ層コントローラーのように見えますが、ロジック層と BrowserStuff (Cookie、URL、メッセージ) は UI 層ですか?

現在、MVC では次のように動作します。コントローラーは ajax 呼び出しを行い、モデルにデータを入力します。モデルは、すべての表示オブジェクト (テキスト ボックス、グリッドなど) を持つビューにデータバインドされた 1 つの方法です。 ビューはビュー ロジックを処理します。レンダリング、ホバリング、クリックなどのように、コントローラーにイベントを発生させます。

最終的にはコントローラーをテストしたいので、DIを使い始めたい

4

0 に答える 0