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
ponday
November 05, 2018
Programming
2
720
え、まだWeb Componentsを未来の技術だと思ってるの?
VEGA Tech Meetup #3 (2018/11/05) 発表資料です。
ponday
November 05, 2018
Tweet
Share
More Decks by ponday
See All by ponday
関数型でGoFのデザインパターンやってみる
honda
0
1.1k
TypeScriptの型表現
honda
10
2.9k
Web Componentsの今
honda
1
380
これまでのReact、これからのReact
honda
0
270
Gatsbyお試し
honda
0
110
styled-components or emotion?
honda
0
630
Web ComponentsとAngular
honda
0
130
Atomic Design周りについての私見
honda
1
590
Web Componentsの動向とPolymer
honda
4
2.3k
Other Decks in Programming
See All in Programming
Amebaチョイス立ち上げの裏側 ~依存システムとの闘い~
daichi_igarashi
0
220
REXML改善のその後
naitoh
0
150
長期運用プロダクトの開発速度を維持し続けるためのリファクタリング実践例
wataruss
8
2.5k
健康第一!MetricKitで始めるアプリの健康診断 / App Health Checkups Starting with MetricKit
nekowen
4
790
Rubyのobject_id
qnighy
6
1.3k
dotfiles について話したい #湘なんか
stefafafan
2
280
大公開!iOS開発の悩みトップ5 〜iOSDC Japan 2024〜
ryunakayama
0
180
Using Livebook to build and deploy internal tools @ ElixirConf 2024
hugobarauna
0
210
詳解UIWindow
natmark
3
2k
これからの時代の新標準!SwiftTestingへの移行とトラブルシューティング
uetyo
0
440
LangChainの現在とv0.3にむけて
os1ma
3
650
座談会 「Strict ConcurrencyとSwift 6が開く新時代: 私たちはどう生きるか?」
shiz
4
2.9k
Featured
See All Featured
Building Applications with DynamoDB
mza
89
5.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
For a Future-Friendly Web
brad_frost
173
9.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
21
3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
33
1.7k
A Modern Web Designer's Workflow
chriscoyier
690
190k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
109
6.9k
Learning to Love Humans: Emotional Interface Design
aarron
270
40k
Happy Clients
brianwarren
96
6.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
42
2k
Into the Great Unknown - MozCon
thekraken
28
1.4k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.5k
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 !!