JavaScriptのモジュール性、サーバーベースのMVCおよびビジネスリアリティ
これは非常に広範な質問であることを理解していますが、この問題のさまざまな側面を個別に扱っており、すべての概念と技術をまとめるのに苦労しています。 答えには次のテクノロジーを含めるように指定したいと思います。 C# MVC 3 w / Razor Javascript w / jQuery それ以上のもの(Backbone.js、Entity Frameworkなど)は、次の質問への回答に役立つ場合、提案として歓迎します。 上記のテクノロジーを使用して、スケーラビリティとリッチで高速でクリーンなUIを作成する能力を維持しながら、コードとロジックを整理するための最適な戦略は何ですか? 理想的には、ビジネス/企業環境で展開されているソリューションに焦点を当てるべきです。その際、上記の技術リストは変更されないため、「現在使用しているyyyの代わりにxxxを使用する必要があります」というソリューションを提供しないでください。 バックグラウンド 私は毎日jQueryを使用しており、ASP.NETのMVCを採用しており、C#で長い間作業しています。そのため、これらのテクノロジーに関する中級から上級の知識を前提としたソリューションを提示できます。 質問をより小さな部分に整理して、より簡単に回答できるようにします。 1.プロジェクトの構造 ASP.NET MVC(Visual Studio 2010)で作業していることを考えると、このタイプのアプリケーションのメインレイアウトをある程度受け入れられるディレクトリ構造ソリューションが必要です。ブランチのようなものだと思いますが、各フォルダーに含まれる内容と、アプリの他の領域との連携についてもう少し詳しく説明します。 2.データアクセス APIタイプの構造で、できる限りデータアクセスをモジュール化したいと思います。あなたはPOCOオブジェクト(多くの仮定することができUser、UserGroup、Customer、OrderHeader、OrderDetails、など)だけでなく、データ集約型SQLと慎重なUIのレンダリングを必要とするいくつかの複雑なレポートがあるでしょう。 EF + LINQは前者にとっては素晴らしいですが、後者にとってはそれほどではありません。私は、両方のシナリオに適合すると思われるものを、過度に複雑または過度に単純にすることなく見つけられません。 3.クライアント側のコード編成とUIレンダリング ほとんどの開発者が最初にjQueryを採用したように、どこに行く必要があるとしてもコードをまとめ上げるというtrapに陥りましたが、すぐにそれが積み重なってくなりました。以来、飛躍的に進歩していますが、コードを繰り返し実行せずにコードをモジュール化し、UIのさまざまな部分を操作するのに苦労しています。 例として、私が書くかもしれない典型的なコードは次のようになります。気になることはコメントしました(それ以降、遅延AJAX呼び出しの使用に変更し、実際のデータ要求をDOM操作から分離していることに注意してください): $('#doSomethingDangerous').click(function () { // maybe confirm something first if (confirm('Are you sure you want to do this?')) { …