Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
え、まだWeb Componentsを未来の技術だと思ってるの?
Search
ponday
November 05, 2018
Programming
890
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.7k
TypeScriptの型表現
honda
10
3.2k
Web Componentsの今
honda
1
480
これまでのReact、これからのReact
honda
0
350
Gatsbyお試し
honda
0
150
styled-components or emotion?
honda
0
730
Web ComponentsとAngular
honda
0
160
Atomic Design周りについての私見
honda
1
820
Web Componentsの動向とPolymer
honda
4
2.8k
Other Decks in Programming
See All in Programming
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
350
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
370
Domain-Driven Transformation
hschwentner
2
2.3k
wkhtmltopdfの次どうするか問題2026
willnet
2
1.9k
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
8
5.6k
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
160
The Rails Doctrine Decade
koic
2
550
sbt 2.0: takeoff
eed3si9n
0
110
複雑なUIコンポーネントとの ⻑い付き合い⽅:波及するバグからテスト戦略を経て、安全な再設計へ
mixplace
0
310
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
34
16k
R8 の設定見直しでアプリサイズ削減
andpad
0
190
iOS 27でニュースアプリはどう変わる!? 〜日経電子版の新機能対応と、開発事例から〜
lynnswap
7
13k
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
464
34k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
What the history of the web can teach us about the future of AI
inesmontani
PRO
2
730
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
360
Producing Creativity
orderedlist
PRO
348
41k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
620
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
690
The Curse of the Amulet
leimatthew05
3
15k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
530
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 !!