多くのイベントハンドラを持つページがあります。コードが1000行以上のコードに達したため、コードを読むのが難しくなり始めました。コードを別のファイルに分ける予定です。私の質問は、別のファイルにJSコードを分離する上で不利な点はありますか?JavaScriptコードを分離する際の短所はありますか?
答えて
デメリット?
別のHTTPリクエスト。開発者は、ファイルを圧縮し、最適化のためにできるだけ少ないファイルにすることを推奨します。あなたが要求するファイルが少ないほど、速くなります(往復が少ないので)
自動完成のテキストエディタを使用すると、これらのエディタの中には他のファイル自動完成のためのあなたが持っている機能をメモしなければ、これは問題になる可能性があります。
これらの相互依存ファイルのいずれかが読み込めなかった場合、あなたのアプリケーションは中断します。
欠点は、すべてが正しく含まれていることを確認するという複雑さが増すことです。しかし、1000行が扱いにくくなっています。 Here's a related page about calling JavaScript objects in separate files
ベストプラクティスは、各ファイルには、すべての開発/デバッグ/編集/ソース制御のための最も効率的であるものは何でも(関連ある機能のモジュールが含まれている開発目的のために、比較的小さなファイルを作成することです。あなたは、それぞれを与えることができますこれらのファイルはそれぞれ別々に管理することができます(ソース管理システムの独自のバージョン履歴、チェックイン/チェックアウトなど)。複数のタブを開く方が簡単ですエディタでファイルを別々にしてブックマークを使用して1つの大きなファイルなどの異なる場所を行き来しようとするよりも...
次に、アプリケーションをデプロイするときは、 ureまたはYUI Compressor)を使用して、すべての小さなファイルを最小化して1つの展開ファイルに結合します。これにより、関連するコードを含むより小さいファイルの開発上の利点が保持されますが、1つのより大きな外部javascriptファイルにほとんどまたはすべてのコードを1つのhttpリクエストでダウンロードでき、非常に効果的にキャッシュできます。
異なるファイルにコードを分けておくと、メンテナンスに役立ちます。 CommonJSと互換性のあるモジュールで分割することをお勧めします。ブラウザ環境で作業している場合は、RequireJSを使用して読み込むことができます。 HTTPリクエストを最適化するために、提供されたユーティリティを使用して、Webサイト/ Webアプリケーションをデプロイするときに単一のファイルを作成することもできます。ここで
はJSminifyとVisualStudioをで使用して自動化を構築するための同様のツールについてbolgポストです:私の心にすぐに来る http://encosia.com/automatically-minify-and-combine-javascript-in-visual-studio/
- 1. EOFを使用する際の短所はありますか?
- 2. Webアプリケーションからバッチファイルを実行する際の短所はありますか?
- 3. PyPyの下でDjangoを実行する際の短所はありますか?
- 4. Hibernate:イベントリスナまたはインターセプタ、実際にはどのような長所と短所がありますか?
- 5. IQueryableを使用する際の短所!
- 6. Android APIよりJQTouch/Phonegapを使用する際の短所はありますか?
- 7. このコードを短くする方法はありますか?
- 8. ウェブページのコンテンツを分離するツールはありますか?
- 9. GC.disableのパフォーマンス上の短所はありますか?
- 10. シンボルを破棄する際の短所は何ですか?
- 11. StringBuilderを使用する際の短所は何ですか?
- 12. スタイリングの目的で空のdivタグを使用する際の短所はありますか?
- 13. ASP.net MVC Webforms View Engineの短所はありますか?
- 14. 大きなセッションタイムアウト値の短所はありますか?
- 15. SQL Serverと比べて、dotConnect for Oracleを使用する際の短所はありますか?
- 16. Linux上で静的にリンクされたアプリケーションを使用する際の短所はありますか?
- 17. 今後resqueジョブを実行する際の短所は何か?
- 18. javascript/jqueryコードを短縮しますか?
- 19. すべてのJavaScriptファイル(ベンダーを含む)を連結するには短所がありますか
- 20. javascriptの匿名メソッドの長所と短所は何ですか?
- 21. cssコードからhtmlコードを分離するには
- 22. 分離コード
- 23. 分離コード
- 24. Rコードから分離する
- 25. ctimeのtzsetを使用する際の短所は何ですか?
- 26. 多くのハードリンクの作成/削除の短所はありますか?
- 27. Event sourcingとCQRSを使用する際の短所は何ですか?
- 28. イメージをファイルシステムに保存する際の短所は何ですか?
- 29. 多くのifステートメントを使用する際の短所
- 30. 複数のサブドメインでDjangoセッションを共有する際の短所
ことの一つは、別のネットワークの要求です。私は、読み込み可能なdevファイルまたは複数のファイルを用意することを提案しますが、1つのminifiedまたはgzippedファイルを作成することをお勧めします。 – Kumar
(編集:Kumarは私にそれを打ち負かしましたが、同時リクエストの不足がまだ残っていると思います。)私が考えることができる唯一の重要な点は、異なるJSファイルを読み込むのが少し遅くなることです。それらは競合する可能性があるため、一度に1つしか読み込めません(ただし、ブラウザはこれを回避し始めているかもしれませんが、ここ数年はチェックしていません)。あなたは常にプロダクションビルドでいくつかのファイルを一緒にglobすることができます。 – Corbin
はKumarに同意していますが、より多くのコードを持つファイルがたくさんある場合を除き、パフォーマンスの違いはほとんど見られません。 – dbrin