ASP.NET MVC、jQuery、および jQueryUI を使用するプロジェクトを終了しました。私が書いたページの 1 つは、イベント ハンドラー用のクライアント側コードを大量に作成することになり、ページ上のコントロールの相互作用とその状態 (ページ非常にインタラクティブで、Google ドキュメントのような感覚があります)。私の質問は、複雑なやり取り (Google ドキュメントや yahoo のメール クライアントなど) があるクライアント側の開発 (具体的には jQuery と jQueryUI を使用) に利用できるベスト プラクティスは何ですか? 私のコードに対する最大の不満は、ほぼすべてのイベント ハンドラーについて、ページ上の他のコントロールの状態に基づいてコードを実行する多数の if ステートメントを作成することになったことです。これをより制御された方法で処理する方法が必要なようです。
3 に答える
私は「プロジェクトシルク」を経験することから多くを学びました:
Project Silkは、クライアント側の双方向性に焦点を当てた、ブラウザー間のWebアプリケーションを構築するためのガイダンスを提供します。
あなたが与えた簡単な説明から、あなたは主にアプリケーションの特定の部分が他の部分と通信する方法に問題があるようです。それはあなたがそれをかなり緊密に結合しているように聞こえます。
これはあなたにいくつかのアイデアを与えるかもしれません。
一般に、物事をモジュール化すればするほど、複雑なアプリケーションをまとめやすくなります。物事を 1 つのこと (単一の責任) だけを行う個別のコンポーネントに分割し、システムの他の部分とやり取りするための API を明確に定義します。理論的には単純に思えますが、実際には、コードを書き始める前に、アプリのアーキテクチャについて十分に検討する必要があります。
シングル ページ アプリケーションに関するJohn Papa のコースは、開始するのに適した場所です。
クライアント側フレームワークの選択を決定する際には、多くのオプションがあります。
TODOMVCプロジェクトのすべてのプロジェクトを調べます。
中小規模のアプリには AngularJS を選択し、はるかに大きなアプリ (サーバー側として ASPNET) には GWT を選択します。