Web Componentsは W3Cで標準化が進められている技術
- Custom Element:独自タグ作る技術
- Shadow DOM:DOMのカプセル化する技術
- Template Element:「テンプレートである」という意味合い以外持たないHTML要素
- HTML Import:JSやCSSのようにHTMLもインポート可能にする技術
一方
- Polymer:Web Componentsの上に構築されたライブラリ
Web Components標準はそれほど高いレベルのAPIを提供しません。なので、実際にコンポーネントを作ろうとすると、実装の重複が多くなります。その重複を排除して、最小限のコードでコンポーネントを作れるようにするのがPolymerです。物江ちなみにEdgeは、Web Componentsについては長いこと意識しているようですが、まだ詳細は未定です。Polymerを使うと、現在のEdgeでもWeb Componentsが動作したりするんでしょうか?北村はい、PolymerはPolyfill(対応していないブラウザ上でAPIのエミュレーションを行うライブラリ)も含んでいますので、動作しますね。実は、現在のYouTubeサイトはWeb ComponentsベースのHTMLに全て書き換えられているんです。コードを見てみると面白いと思いますよ。あと、Polymerはライブラリだけじゃなくてコンポーネントも提供しているんです。 http://webcomponents.org/ を見てみると、すでにいろんなコンポーネントが利用できるのを確認できる