ブックマーク / nodaguti.hatenablog.com (2)

  • vendor.js の終焉と Granular Chunks - 徒然技術日記

    webpack を使った code splitting のベストプラクティスとして,v3 以前の CommonsChunkPlugin の時代から node_modules 以下に置かれている依存ライブラリを vendor.js という単一の chunk にまとめる方法が紹介されていました. これは webpack の公式ドキュメント Caching | webpackGoogle の Make use of long-term caching  |  Web Fundamentals  |  Google Developers でも説明されている通り,「ライブラリのコードはアプリケーションコードに比べると更新頻度が低い」という仮定のもと vendor.js にライブラリコードを切り出すことで,キャッシュ効率をよくすることが主な目的でした. しかし時は流れ,いつしか「ライブラリのコー

    vendor.js の終焉と Granular Chunks - 徒然技術日記
  • Differential Serving の実装に module-nomodule pattern を使うべきではない - 徒然技術日記

    タイトルはやや誇張気味ですが,最近某所で differential serving を導入しようとして考えたことのまとめです. なお,differential serving の概念には CSS や画像なども含まれることがありますし,実現方法にも polyfill.io などの外部ソリューションが存在しますが,稿では JS の bundle を自前でなんとかする場合に絞って議論することをあらかじめお断りしておきます. TL;DR module-nomodule pattern は differential serving を始める一歩としてはよいが,長期的には負債になる可能性がある きちんとやるなら UA sniffing なり feature detection なりで分岐させるべき Differential Serving とは そもそも differential serving と

    Differential Serving の実装に module-nomodule pattern を使うべきではない - 徒然技術日記
  • 1