1

Dojo の load-as-you-need it 構造は実際にパフォーマンスの向上につながるのでしょうか? 少なくとも私にとっては?

私の会社の Web サイトは、主に Dojo を使用する IBM Websphere に切り替える予定です。私の会社は、主に「ページ読み込みまでの秒数」という点で、ページのパフォーマンスに非常に関心があります。その結果、「サーバーへのヒットを最小限に抑える」という指示が与えられたため、現在の Web サイトでは、本番環境に昇格する前にすべての .js ファイルを集約しています。

しかし、その指令は基本的に法律になりつつあるので、私がそれに反対するのであれば、非常に適切な根拠が必要です. 「それは良い考えだ」と「必要なときにだけロードする」以外は、ロードアズユーゴー方式を支持するものを見つけることができませんでした(後者は、実際には前者にのみ基づいています。私が言うことができる)。

そして、すべてを 1 つのファイルにフラット化すると、dojo.require() ステートメントをまったく使用できなくなるのではないでしょうか? (アイデアは、開発側をモジュールごとに分割して組織をより合理的にすることができたが、本番バージョンを単一のファイルにすることができた場合、 dojo.require() はそこで意味をなさなくなり、私は本番用にパッケージ化するためにJavaScriptに侵入的なことを行うためにビルドが必要になる、ますます複雑な状況.)

「場合による」という答えには抵抗してください。私が見たベスト プラクティス ドキュメント (Yahoo、Google など) は、ほとんど「ページの読み込みを減らす」と言っているだけで、それについて「依存する」ことはあまりありません。しかし、Dojo のフレームワークはそのアプローチに関して決定的なものに見えるので、もっと説得力のある議論があるのではないかと思っています。

4

1 に答える 1

1

Dojo は実際に 2 つのアプローチを組み合わせます。define開発モードでは、 (dojo.requireは廃止されました) を使用して他のモジュールを動的にロードする多くのファイルがあります。これは、抽象化と開発に非常に適しています。

次に、Dojo ビルド システムを使用して、これらすべての小さなファイルを 1 つまたは複数の (レイヤーとしても知られる) 縮小された Javascript ファイルにコンパイルする「プロダクション モード」があります。これにより、すべてのモジュール性を維持しながら、サーバーへのヒットが減少します。レイヤー アプローチでは、後で必要になるアプリケーション データは別のファイルから自動的に読み込まれます。

参照: http://dojotoolkit.org/blog/learn-more-about-amd

http://dojotoolkit.org/reference-guide/1.7/build/

于 2012-08-01T16:31:17.057 に答える