Chromium では Prefetch や Prerender を総称して Speculative Loading と呼ぶことになった話
Chromium では Prefetch や Prerender といった投機的なリソースローディング機能を総称して Preloading と呼んでいました。しかし、Preloading という名称は既に広く使われており、特に具体的な API である <link rel=preload>
や Service Worker の Navigation Preload などと被ってしまうため、評判がよくありませんでした。
I've complained before that "preload" is a heavily overused term in frontend/#webperf, with many conflicting meanings and nuances.
— Robin Marx (@programmingart) August 17, 2023
Now Google will make it even worse by using "preloading" for the upcoming revival of prefetch/prerender: https://t.co/ZzA7Oy4dBv
🙄🙄🙄🙄🙄 pic.twitter.com/TvlO99wUon
また、以前の記事でも紹介した通り、Pre* APIs
という呼び方もありますが、すべての投機的なリソースローディング機能が Pre プレフィックスを持っているわけではありません(例えば、Speculation Rules API)し、API ではなく内部実装の最適化機構に対しては使いにくい名前でした。また、ブログ記事などで Pre*
と表記しても読者にはその意味が伝わりにくいという問題もありました。
そこで、開発チーム内での議論の結果、投機的なリソースローディングを総称して Speculative Loading と呼ぶことになりました。この名称はウェブ標準として定められたものではなく、Chromium 開発者が独自に使用している用語になります。用語が馴染まないケースがあればまた違う呼び名に変える可能性もありますが、少なくとも今後 Chromium ではこの用語を使用していきます。
具体的な変更
昨年、DevTools が Speculation Rules をサポートしました。この際パネル名などに Preloads という言葉が使われていましたが、名称変更に伴って Speculative loads や Speculations といった文言に修正されました。リンク先の記事では古い表記になっていますが、いずれ更新されると思います。
@programmingart you may be pleased with the latest change in Chrome Canary: pic.twitter.com/yBmSauqwkX
— Barry Pollard (@tunetheweb) October 30, 2023
MDN の Speculative Loading や Speculation Rules API の記事では既に新しい表記が使われています。