Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
え、まだWeb Componentsを未来の技術だと思ってるの?
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ponday
November 05, 2018
Programming
880
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
え、まだWeb Componentsを未来の技術だと思ってるの?
VEGA Tech Meetup #3 (2018/11/05) 発表資料です。
ponday
November 05, 2018
More Decks by ponday
See All by ponday
関数型でGoFのデザインパターンやってみる
honda
1
1.6k
TypeScriptの型表現
honda
10
3.1k
Web Componentsの今
honda
1
480
これまでのReact、これからのReact
honda
0
340
Gatsbyお試し
honda
0
140
styled-components or emotion?
honda
0
720
Web ComponentsとAngular
honda
0
160
Atomic Design周りについての私見
honda
1
800
Web Componentsの動向とPolymer
honda
4
2.7k
Other Decks in Programming
See All in Programming
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
520
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
630
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
330
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
340
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1.3k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
160
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.2k
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
240
LLM Plugin for Node-REDの利用方法と開発について
404background
0
160
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
200
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
200
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
100
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
540
Ruling the World: When Life Gets Gamed
codingconduct
0
250
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Side Projects
sachag
455
43k
Exploring anti-patterns in Rails
aemeredith
3
400
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
960
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Designing Experiences People Love
moore
143
24k
Evolving SEO for Evolving Search Engines
ryanjones
0
210
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
160
Transcript
え、まだWeb Componentsを未来の技術だと思ってるの? VEGA Tech Meetup #3 / Nov 5th, 2018
ponday (@ponday_dev)
Profile - ponday (Honda, Yusuke) - 株式会社ベガコーポレーション エンジニア - Like
: TypeScript / Elixir / Python etc… - あいかわらずフロントエンドの人ではない
None
Web標準の技術のみで 再利用可能な部品を作るAPI
使ったことある人 ノ
たぶんほとんど居ないのでは?
Web Componentsを未来の技術と思い込んでいませんか?
よくある意見 - まだブラウザの対応が進んでないでしょ? - まだほとんど使われてないでしょ? - ウチはReact/Angular/Vue.js使ってるから...
よくある意見 - まだブラウザの対応が進んでないでしょ? - まだほとんど使われてないでしょ? - ウチはReact/Angular/Vue.js使ってるから...
ブラウザの対応状況 対応済 未対応
ブラウザの対応状況 対応済 未対応 大半のブラウザが 対応済
ブラウザの対応状況 対応済 未対応 開発ステータスが 「開発中」に
ブラウザの対応状況 - 大半のモダンブラウザが対応済 - Edgeもステータスが「検討中」→「開発中」に - 既に対応ブラウザ次第では十分使えるレベル - Polyfillを使うという手も
よくある意見 - まだブラウザの対応が進んでないでしょ? - まだほとんど使われてないでしょ? - ウチはReact/Angular/Vue.js使ってるから...
Web Componentsの利用例 - 既に採用事例は多数 - GitHub、YouTube、Google Earthなど
Web Componentsの本番利用 - 既存のリソースを捨てる必要はない - 特に追加設定なく利用も可能 - まずは小さく
よくある意見 - まだブラウザの対応が進んでないでしょ? - まだほとんど使われてないでしょ? - ウチはReact/Angular/Vue.js使ってるから...
or
or No !!
with
フレームワークとの連携 - Web ComponentsはあくまでWeb標準の技術 - 特定のフレームワークに依存するものではない - あらゆるフレームワークと連携できる
これまで Component Component Component State Management Routing State Management Routing
State Management Routing DOM API
これまで Component Component Component State Management Routing State Management Routing
State Management Routing DOM API 各FWが コンポーネント機構を提供
これまで Component Component Component State Management Routing State Management Routing
State Management Routing DOM API コンポーネント機構に 各種機能が依存
これまで Component Component Component State Management Routing State Management Routing
State Management Routing DOM API 独自の要素は 他のFWで流用できない
これから DOM API Component Component Component State Management Routing State
Management Routing State Management Routing Web Components
これから DOM API Component Component Component State Management Routing State
Management Routing State Management Routing Web Components Web標準APIによる コンポーネント機構
これから DOM API Component Component Component State Management Routing State
Management Routing State Management Routing Web Components 各FWのコンポーネントから 利用することができる
Web Componentsの役割 - 再利用可能な部品を作るためのAPI - アプリケーション開発のためのAPIではない - あくまでViewの機能を拡充するもの
Web Componentsとフレームワーク Component State Management Routing Component State Management Routing
DOM API
これだけでアプリケーション(SPA)は作れない
Web ComponentsとJSフレームワーク - Web ComponentsはView以外の面倒は見ない - 状態管理 - ルーティング -
etc… - Web Componentsを使わないほうが便利な場面も - JSフレームワークとは適切に役割分担して使う
例えばReact + Web Components React Component Redux (State Management) Web
Components React Router
例えばReact + Web Components React Component Redux (State Management) Web
Components React Router Web Componentsが 面倒をみない機能
例えばReact + Web Components React Component Redux (State Management) Web
Components React Router ReduxやReact Routerは Reactから利用
例えばReact + Web Components React Component Redux (State Management) Web
Components React Router Reactからプロパティを 渡して利用
Vueで利用する場合も構造は同じ Vue Component Vuex (State Management) Web Components Vue Router
課題 - プロパティの受け渡し - Server Side Renderingが難しい - window.customElements.define -
Shadow DOM - SEO
まとめ - Web Componentsはもう未来の技術ではない - 採用実績も増えつつある - JSフレームワークと共存できる - まずは小さく始めてみては?
Thank you !!