BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Google Chrome 53 Beta版にてShadow DOM V1が登場

Google Chrome 53 Beta版にてShadow DOM V1が登場

ブックマーク

原文(投稿日:2016/08/16)へのリンク

GoogleのChrome 53ベータ版はShadow DOM V1とPaymentRequest APIをサポートした。

以前のV0バージョンから大幅な改善がみられるShadow DOM V1へのアップグレードは、複数のShadow rootsの非推奨化や、closed modeに設定することにより外からShadow rootのノードへのアクセスを不許可にする機能追加を含む。

Hayato Ito氏はリリースを発表したブログ記事において、HTML、CSS、それにJavaScriptは便利でパワフルな言語でありつつも巨大なコードベースになった際にメンテナンスが困難な点を強調した

V1は「要素のスタイルと子のDOMをカプセル化しメインのドキュメントから隔離できる。これは大規模または複雑な構成のサイトの保守性を向上させる」とIto氏は述べている。ただし、ChromeはV0もサポートし続けることに留意しておく必要がある。

HackerNewsのGoogle Chrome 53 Betaについてのディスカッションでは、ユーザーのborplk氏が「Shadow DOMはReactなどに(パフォーマンス向上等について)重要な影響を与えるか?」と質問した

GoogleのエンジニアEric Bidelman氏はこう返答している

Shadow DOMの利用は、(ブラウザに組み込まれた)開発者の生産性に貢献するツールであることは明白です。

Reactでは、インラインのstyle (https://facebook.github.io/react/tips/inline-styles.html)またはCSSセレクタをモジュール化(例:CSS Modules)するためのビルドツールを使う必要があります。インラインのstyleは特異性を汚染する可能性があり、大量のインラインのstyleはブラウザのコンテキストを必要以上に切り替える(HTMLパーサー⇔CSSパーサー)作用があります。断っておくと、後者は実際実際のアプリでパフォーマンス問題になることはほとんどありません。

Shadow DOMではCSSを単に書くだけです。<style>タグ内かスタイルシートにセレクターを記述するだけで、ブラウザは魔法のようにセレクターをコンポーネントへスコープします。ツールは必要ありません。また、Shadow rootは外側のstyleが流入することを防ぎます。これについてはブラウザ側の助けなしには特に注意が必要です。

Chrome 53 Beta版は、ほかにもPayment Request APIを導入している。Ito氏によれば、このAPIはクレジットカードかAndroid Payを使った素早くセキュアな支払いを可能にし、タイピングいらずで請求先住所、出荷の詳細、支払人情報をユーザーに提供する。

W3CワーキングドラフトでAPIはこう説明されている

Webページは支払い要求をするPaymentRequestを作成する。これはユーザーによる支払いプロセスの開始に紐付けられている(例: ゲーム内での課金アイテムの購入、立体駐車場での精算、もしくは「買う」「購入」「チェックアウト」などのボタン押下)。PaymentRequestは PaymentRequestは、ユーザーが支払い要求を承認または拒否する前に入力を提供している間にWebページがユーザーエージェントと情報を交換することができます。

Googleは下記のデモ動画を公開している:

53 Betaでは他のアップデートの影に隠れWeb Bluetooth APIも初めて試験的に追加されている。Web Bluetooth APIはWebサイトが近くのデバイスに対しnavigator.bluetooth.requestDeviceでアクセスをリクエストし、ユーザーにプロンプトを表示することで動作する。

Chrome 53 Betaで非推奨になった機能の一部は以下:

  • HTTP/0.9はHTTP/1.0への移行により非推奨化された。これによりレスポンスヘッダーのサポートが追加される。
  • TLS Diffie-Hellman共有鍵による暗号化が、M51での非推奨化に伴い削除された。
  • TextEncoderAPIは引数を受け付けなくなり、その代わり常にUTF-8を使用してエンコードする。
  • Symantec CorporationまたはCAs により発行されたSymantec Corporationに紐づく新たな証明書は、証明書の透明性についての情報が随伴していないかぎり、Chromeでは信頼されない。
 
 

Rate this Article

Relevance
Style
 
 

この記事に星をつける

おすすめ度
スタイル

BT