2011-08-24 6 views
58

質問はとても主観的です。asp.net mvc開発者のためのjavascriptのベストプラクティス

私はasp.net mvcアプリケーションでJavaScriptをより良く管理する方法の実用的な例を探しています。

jQueryより前は、できるだけjavascriptを使用しないようにしました。今私はそれをたくさん使っていますが、大規模なWebアプリケーションでJavaScriptコードを構造化するためのベストプラクティスや推奨事項がありませんでした。私の見解で

  1. インラインジャバスクリプト:私はの有罪だと離れてから移動したい

    いくつかのもの。私は大量のコードを話しているわけではありませんが、私は各ビューに初期化コードを持つことは珍しいことではありません。

  2. 1つの大きな「サイト」javascriptファイル。私のアプリケーションで使用されるプラグインのリスト(例えば、jquery ui)が増えるにつれて、各プラグインを初期化する私の "スタートアップ"機能もそうです。これはしばしば問題1(JavaScriptのインライン追加)を避けるためです。ビューごとにjavascriptファイルがある方がよいでしょうか?
  3. すべては非常に手続き的なようです。私は、オブジェクト指向の方法で作業していました。ネット、しかし、それはJavaScriptになると、これは窓の外に出てくるようです。今私はOOPが確かに可能であることを知っていて、Javascriptで奨励していますが、私は実際のWebアプリケーションの中でどのようにしなければならないかの実用的な例を見ています。
  4. 名前空間/プロジェクト構造 - (オブジェクトのおかげで)javascript名前空間のいくつかの例を見てきましたが、アプローチと同じですが、もう少し背景知識を持つことができます。

人々がおすすめできるサイト、書籍などはお気軽にご利用ください。私はここで説明したアプローチを使用しました

+16

@jfar - 特に、私が代替案の詳細について質問しているように、なぜそれがダウンワードを保証するのかわかりません。 –

+3

+1。私はこの質問が多くの開発者、特にespに関連していると思います。誰かがMVCで始まったばかりです。 –

+7

@jfar - 私は理由に同意していないにも関わらず、なぜ書き込むのを嫌うのかについてのdownvoteをUpvoteしてください。人々が匿名でdownvoteとき私はそれが嫌い。 –

答えて

2
+0

私はこれが好きです。唯一のことは、お客様がおいしいルートを使用している場合、戦略が落ちることです。これを回避する方法の1つは、テキストテンプレートを使用して両方のルートを生成することと、JavaScriptブートストラップを使用してコントローラをストラテジに接続することです。アイデアは自分自身を繰り返さないことです。 –

0

SO

で同様の質問へ

REFは、KnockoutJSのようなライブラリは、私のJSコードを整理するために多くのことを助けてきた、それは本当に強力ですが、私は複数のプロジェクトのためにそれを使用している、それが持っています本当にうまくいった。 (私はasp.net mvcの開発者ですが、これは他のテクノロジーにも当てはまりますが、それを発明した人にはaspnet mvcに関する多くの経験があります)

9

私は2セントで投げたいと思っていました。

  1. Best practice

    は、ビューでのJScriptを使用しないように勧め、と私が見つけたこれは、JScriptのが含まれているか、JSファイルへのJScriptを押すと、あなたのHTMLヘルパーでそれを初期化するHTMLヘルパーを使用することによって回避することができます。これは、サードパーティのMVCコントロール開発者(Telerikなど)が使用するものです。 JScriptをコントローラにプッシュすることを決定した場合、かなり手早く手に入ります。

  2. 私はしばしば、各ビューのJSファイルがあるのと同じシナリオで自分自身を見つけることができますが、モジュールごとに1つのJSを持つように統合できます。これは、あなたのコードがどのくらい複雑になるかによって決まります。多くのビューに同じ初期化があることが分かった場合は、基本ビューのアプローチを使用できます。これはベストプラクティスとも言えます。

  3. JScript is quite OOがあります。これは、JScriptがJSONをどのように使用するかに関係しています。私は、JScriptの柔軟性によって、OOPから傾いているように見えることがわかりました。私の限られたJScript経験は、短く簡潔にしておくことで、再利用可能なJScriptを再適用します。

  4. これはJScriptで実践されていると思います。私がここで見つけた最大の問題は、名前のスペーシングではなく、JScriptの複製/二重読み込みを避ける方法です。ビューを「自己完結型」にするには、理論上は独自のJScriptを読み込む必要がありますが、これによってJScriptが複数回読み込まれたり、競合が発生することさえあります。ここでも良いHTMLヘルパーがあなたをここで救うことができます(賛成です、私は良い例はありませんが、Googleはそれと間違ってはいけません)。

全体的に、JScriptは非常に強力で、全く新しいレベルでWebプログラミングを開きます。 JScriptはWebプラットフォームの一部であり、特に皆がHTML 5に移行する際にはますます重要になります.MVCとJSriptでは、まったく同じことを行う100の異なる方法があり、ベストプラクティスはこれまでのところしかありません。残りの部分は、あなたが達成しようとしているもの、あなたのターゲットオーディエンスが誰であるか、そしてあなたがサポートしているブラウザに応じて決めるまであなた次第です。

関連する問題