3

私は head.js ホームページ ( http://headjs.com/ ) の理論セクションを読んでいましたが、スクリプトを並列にロードするとパフォーマンスが向上することに同意します。しかし、制限があるはずですか?

  • 私は通常、たくさんのjsファイルを持っています。私は自分のアプリケーションが非常にモジュール化されていることを好み、ほとんどのスクリプトは 1 ~ 3KB です。それは多くの http リクエストのように見え、ロード スクリプトを並行して実行する利点を台無しにしてしまいます。head.js などのローダーを使用することが理にかなっているしきい値と、大きな js ファイルだけを使用する方が良い場所を確認するために、誰かが何らかの測定を行ったのではないでしょうか? (すべてのファイルが均等に縮小されます)

  • 私のもう 1 つの懸念は、4G 接続デバイスに関するものです。4G ネットワークでは HTTP リクエストのオーバーヘッドが大きくなることがわかっています。この場合でも、head.js (または require.js、または lab.js など) のようなソリューションは意味がありますか?

4

2 に答える 2

4

免責事項:私は現在HeadJSを開発しています

第一に、サイトの理論セクションはかなり古く、あなたが見るウォーターフォールのスクリーンショットはFF3または4のようなものです..ナビゲーターはそれ以来非常に長い道のりを歩んできました:)

並列読み込みが最良の方法であることは事実ですが、秘密は、現在、ほとんどすべてのナビゲーターが舞台裏で単独で実行していることです。BrowserScope Stats

あなたへの私の提案:

  • あなたのjsを縮小する
  • 大きな束を作る
  • ページの一番下に貼り付けます

<head> にスクリプトを 1 つも使用せずに、製品を機能させるために必要なことを行います。.ready(function) を使用して関数をページの最後にプッシュできるようにするスクリプトを 1 つ使用することもできます。

JS (jQuery Mobile など) ではなく、CSS (ブートストラップなど) を介して機能する UI レイアウトを実現するよう努めてください。

ページの最後にいくつかの関数をプッシュする必要がある場合は、HeadJS に .ready() が組み込まれているため、役に立ちます。それでも、HeadJS を除くすべてのスクリプトをページの下部に配置するように努力する必要があります。

ページの下部に移動したら、script タグを介してスクリプトを含めます (推奨される方法)。または、動的な依存関係管理が必要な場合は、.js() を使用してスクリプトを並行してロードします。

他にも考慮すべき点はありますが、上記はすでに長い道のりです。

于 2013-05-25T07:37:03.063 に答える
1

免責事項: リンク先は私が書いたリソースです。

RequireJS またはその他の AMD ローダーを使用します。リソースを選択的に、またはオンデマンドでロードできるようにします。最初に必要なリソースを最小限に抑え、残りを後で非同期的にロードするように、アプリケーションをそのように構成することができます。チェック: AMD と RequireJS を理解する

于 2013-05-28T03:31:40.457 に答える