SlideShare a Scribd company logo
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Is 2019 the year of Web
Components?
Fellyph Cintra
Solutions Engineer
Deloitte Digital
1
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
@Fellyph
2
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Web Components
3
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Web Components
It is a set of four specs from HTML5 and JavaScript.
Web components creates custom and reusable
elements natively
4Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Fantastic 4
5
Custom
Elements
Shadow
DOM
ES modules
HTML
Templates
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
● The specification allows us to create new types of
DOM elements, where we have two types:
○ Autonomous elements where the entire definition
created by the developer
○ Customised element when the new element
extends from a Default HTML element
6
Custom
Elements
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Autonomous element
7
<ph-button></ph-button>
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Customised element
8
<button is=“ph-custom-button“>Click Me :)</button>
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
● Independent DOM tree that provides
encapsulation.
● Keeps the markup in a different layer, to keep the
code clean.
● Needs extra attention with cross-functionality
Light DOM X Shadow DOM
9
Shadow
DOM
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Shadow DOM Example
10
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
● The ES Module specification defines the inclusion
and reuse of JS documents in other JS documents.
● ES Modules enable web components to be
developed in a modular way.
11
ES modules
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
● Permits to create reusable HTML template without
rendering them.
● Images won't load until we attach the template on
the DOM.
12
HTML
Templates
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Is 2019 the year of Web
Components?
13
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 14
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 15
Google I/O 2012 - The Web Platform’s Cutting Edge
JS.LA 2014 - Zeno Rocha: A future called
Web Components
Google I/O 2014 - Polymer and Web Components
change everything you know about Web development
Google I/O 2016 - Pratical lessons from a year
of building Web Components
Google I/O 2108 - Polymer 3.0 and beyond
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Support
16
end of
2018
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 17
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 18
Is 2019 the year of Web Components?
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 19
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 20
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Web components + frameworks
21https://custom-elements-everywhere.com/
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
JavaScript frameworks support
22
100% 100% 71%91%
https://custom-elements-everywhere.com/
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 23
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Where can I start?
24
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Developer Guide
25https://open-wc.org/
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
open-wc
● Web component recommendations with pre-configured
● automation
● tooling
● test
● lint
● demo
26
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
npm init @open-wc
27
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Lit Element
28
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
webcomponents.org
29
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Web fundamentals
30https://developers.google.com/web/fundamentals/web-components/
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Obrigado
Thank you
31
Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
Links
Documentation
https://www.webcomponents.org/
https://open-wc.org/
https://developers.google.com/web/fundamentals/web-components/
https://custom-elements-everywhere.com/
I/O talks
Google I/O 2012 - https://www.youtube.com/watch?v=2txPYQOWBtg
Google I/O 2014 - https://www.youtube.com/watch?v=8OJ7ih8EE7
Google I/O 2016 - https://www.youtube.com/watch?v=zfQoleQEa4w
Google I/O 2018 - https://www.youtube.com/watch?v=7CUO7PyD5zA

More Related Content

Similar to Google I/O extended 2019 Fellyph Cintra

2024 mega trends for the digital workplace - FINAL.pdf
2024 mega trends for the digital workplace - FINAL.pdf2024 mega trends for the digital workplace - FINAL.pdf
2024 mega trends for the digital workplace - FINAL.pdf
Nancy Goebel
 
Volto: A Journey towards Personalization
Volto: A Journey towards PersonalizationVolto: A Journey towards Personalization
Volto: A Journey towards Personalization
PloneFoundation
 
Running with the bulls
Running with the bullsRunning with the bulls
Running with the bulls
Viqui Dill
 
Learn How To Implement Mobile First Into Your Website Dominate19 - V2
Learn How To Implement Mobile First Into Your Website Dominate19 - V2Learn How To Implement Mobile First Into Your Website Dominate19 - V2
Learn How To Implement Mobile First Into Your Website Dominate19 - V2
Exposure Ninja
 
Open API Specification - SiliconValley Code camp 2017 session @siddiqimuhammad
Open API Specification - SiliconValley Code camp 2017 session @siddiqimuhammadOpen API Specification - SiliconValley Code camp 2017 session @siddiqimuhammad
Open API Specification - SiliconValley Code camp 2017 session @siddiqimuhammad
Muhammad Siddiqi
 
Strategically Evolve Your Role as an IT Pro
Strategically Evolve Your Role as an IT ProStrategically Evolve Your Role as an IT Pro
Strategically Evolve Your Role as an IT Pro
Christian Buckley
 
Socionity internship July 2020
Socionity internship  July 2020Socionity internship  July 2020
Socionity internship July 2020
Madhavan Malolan
 
Manufacturers Data Moving from PDF's to digital
Manufacturers Data Moving from PDF's to digitalManufacturers Data Moving from PDF's to digital
Manufacturers Data Moving from PDF's to digital
Mariela Daskalova
 
Cloud run - Serverless Containers Done Right
Cloud run - Serverless Containers Done RightCloud run - Serverless Containers Done Right
Cloud run - Serverless Containers Done Right
mfazal
 
The Digital Renaissance of Work - Webinar Slides
The Digital Renaissance of Work  -  Webinar Slides The Digital Renaissance of Work  -  Webinar Slides
The Digital Renaissance of Work - Webinar Slides
Digital Workplace Group
 
A retrospective of 2019 and what to expect from Submer and Immersion Cooling ...
A retrospective of 2019 and what to expect from Submer and Immersion Cooling ...A retrospective of 2019 and what to expect from Submer and Immersion Cooling ...
A retrospective of 2019 and what to expect from Submer and Immersion Cooling ...
Submer Immersion Cooling
 
Design In Tech Report 2016
Design In Tech Report 2016Design In Tech Report 2016
Design In Tech Report 2016
John Maeda
 
The Future of Personalised Search: Local SEO & Machine Learning
The Future of Personalised Search: Local SEO & Machine LearningThe Future of Personalised Search: Local SEO & Machine Learning
The Future of Personalised Search: Local SEO & Machine Learning
Patrick Langridge
 
Developing For Trifecta
Developing For TrifectaDeveloping For Trifecta
Developing For Trifecta
Marcus Finley
 
GitLab: Remote and Open (2018-07-16 @ The New Digital School's Business Of Te...
GitLab: Remote and Open (2018-07-16 @ The New Digital School's Business Of Te...GitLab: Remote and Open (2018-07-16 @ The New Digital School's Business Of Te...
GitLab: Remote and Open (2018-07-16 @ The New Digital School's Business Of Te...
Pedro Moreira da Silva
 
Mobile Moments 2016 - Gearóid O'Rourke | Helpling
Mobile Moments 2016 - Gearóid O'Rourke | HelplingMobile Moments 2016 - Gearóid O'Rourke | Helpling
Mobile Moments 2016 - Gearóid O'Rourke | Helpling
Swrve_Inc
 
Enhancing SharePoint with Responsive Web Design
Enhancing SharePoint with Responsive Web DesignEnhancing SharePoint with Responsive Web Design
Enhancing SharePoint with Responsive Web Design
Eric Overfield
 
Gsdc intro session
Gsdc intro sessionGsdc intro session
Gsdc intro session
Miljanorevi1
 
[Forum Global Edition] Building Social Equity Brick by Brick
[Forum Global Edition]  Building Social Equity Brick by Brick[Forum Global Edition]  Building Social Equity Brick by Brick
[Forum Global Edition] Building Social Equity Brick by Brick
E-Commerce Brasil
 
How do you get started in AI?
How do you get started in AI?How do you get started in AI?
How do you get started in AI?
Gordon Haff
 

Similar to Google I/O extended 2019 Fellyph Cintra (20)

2024 mega trends for the digital workplace - FINAL.pdf
2024 mega trends for the digital workplace - FINAL.pdf2024 mega trends for the digital workplace - FINAL.pdf
2024 mega trends for the digital workplace - FINAL.pdf
 
Volto: A Journey towards Personalization
Volto: A Journey towards PersonalizationVolto: A Journey towards Personalization
Volto: A Journey towards Personalization
 
Running with the bulls
Running with the bullsRunning with the bulls
Running with the bulls
 
Learn How To Implement Mobile First Into Your Website Dominate19 - V2
Learn How To Implement Mobile First Into Your Website Dominate19 - V2Learn How To Implement Mobile First Into Your Website Dominate19 - V2
Learn How To Implement Mobile First Into Your Website Dominate19 - V2
 
Open API Specification - SiliconValley Code camp 2017 session @siddiqimuhammad
Open API Specification - SiliconValley Code camp 2017 session @siddiqimuhammadOpen API Specification - SiliconValley Code camp 2017 session @siddiqimuhammad
Open API Specification - SiliconValley Code camp 2017 session @siddiqimuhammad
 
Strategically Evolve Your Role as an IT Pro
Strategically Evolve Your Role as an IT ProStrategically Evolve Your Role as an IT Pro
Strategically Evolve Your Role as an IT Pro
 
Socionity internship July 2020
Socionity internship  July 2020Socionity internship  July 2020
Socionity internship July 2020
 
Manufacturers Data Moving from PDF's to digital
Manufacturers Data Moving from PDF's to digitalManufacturers Data Moving from PDF's to digital
Manufacturers Data Moving from PDF's to digital
 
Cloud run - Serverless Containers Done Right
Cloud run - Serverless Containers Done RightCloud run - Serverless Containers Done Right
Cloud run - Serverless Containers Done Right
 
The Digital Renaissance of Work - Webinar Slides
The Digital Renaissance of Work  -  Webinar Slides The Digital Renaissance of Work  -  Webinar Slides
The Digital Renaissance of Work - Webinar Slides
 
A retrospective of 2019 and what to expect from Submer and Immersion Cooling ...
A retrospective of 2019 and what to expect from Submer and Immersion Cooling ...A retrospective of 2019 and what to expect from Submer and Immersion Cooling ...
A retrospective of 2019 and what to expect from Submer and Immersion Cooling ...
 
Design In Tech Report 2016
Design In Tech Report 2016Design In Tech Report 2016
Design In Tech Report 2016
 
The Future of Personalised Search: Local SEO & Machine Learning
The Future of Personalised Search: Local SEO & Machine LearningThe Future of Personalised Search: Local SEO & Machine Learning
The Future of Personalised Search: Local SEO & Machine Learning
 
Developing For Trifecta
Developing For TrifectaDeveloping For Trifecta
Developing For Trifecta
 
GitLab: Remote and Open (2018-07-16 @ The New Digital School's Business Of Te...
GitLab: Remote and Open (2018-07-16 @ The New Digital School's Business Of Te...GitLab: Remote and Open (2018-07-16 @ The New Digital School's Business Of Te...
GitLab: Remote and Open (2018-07-16 @ The New Digital School's Business Of Te...
 
Mobile Moments 2016 - Gearóid O'Rourke | Helpling
Mobile Moments 2016 - Gearóid O'Rourke | HelplingMobile Moments 2016 - Gearóid O'Rourke | Helpling
Mobile Moments 2016 - Gearóid O'Rourke | Helpling
 
Enhancing SharePoint with Responsive Web Design
Enhancing SharePoint with Responsive Web DesignEnhancing SharePoint with Responsive Web Design
Enhancing SharePoint with Responsive Web Design
 
Gsdc intro session
Gsdc intro sessionGsdc intro session
Gsdc intro session
 
[Forum Global Edition] Building Social Equity Brick by Brick
[Forum Global Edition]  Building Social Equity Brick by Brick[Forum Global Edition]  Building Social Equity Brick by Brick
[Forum Global Edition] Building Social Equity Brick by Brick
 
How do you get started in AI?
How do you get started in AI?How do you get started in AI?
How do you get started in AI?
 

More from Fellyph Cintra

CSS 2022 um mundo novo de possibilidades
CSS 2022 um mundo novo de possibilidadesCSS 2022 um mundo novo de possibilidades
CSS 2022 um mundo novo de possibilidades
Fellyph Cintra
 
CSS 2022: un mundo completamente nuevo - Presentacion WC Pontevedra - Fellyph...
CSS 2022: un mundo completamente nuevo - Presentacion WC Pontevedra - Fellyph...CSS 2022: un mundo completamente nuevo - Presentacion WC Pontevedra - Fellyph...
CSS 2022: un mundo completamente nuevo - Presentacion WC Pontevedra - Fellyph...
Fellyph Cintra
 
Page experience road - WordCamp Athens 2022
Page experience road  - WordCamp Athens 2022Page experience road  - WordCamp Athens 2022
Page experience road - WordCamp Athens 2022
Fellyph Cintra
 
Web stories the new visual storytelling format for the web
Web stories the new  visual storytelling format for the webWeb stories the new  visual storytelling format for the web
Web stories the new visual storytelling format for the web
Fellyph Cintra
 
Machine learning for mortal developers - Dublin.JS
Machine learning for mortal developers - Dublin.JSMachine learning for mortal developers - Dublin.JS
Machine learning for mortal developers - Dublin.JS
Fellyph Cintra
 
Machine learning for mortal developers - Fellyph Cintra
Machine learning for mortal developers -  Fellyph CintraMachine learning for mortal developers -  Fellyph Cintra
Machine learning for mortal developers - Fellyph Cintra
Fellyph Cintra
 
Using machine learning to improve our WordPress application
Using machine learning to improve our WordPress applicationUsing machine learning to improve our WordPress application
Using machine learning to improve our WordPress application
Fellyph Cintra
 
WordCamp Brighton - Why use web components
WordCamp Brighton - Why use web componentsWordCamp Brighton - Why use web components
WordCamp Brighton - Why use web components
Fellyph Cintra
 
Accessibility workshop
Accessibility workshopAccessibility workshop
Accessibility workshop
Fellyph Cintra
 
WCEU 2019 recap - AMP Plugin 1.2 and Gutenberg 6.0
WCEU 2019 recap - AMP Plugin 1.2 and Gutenberg 6.0WCEU 2019 recap - AMP Plugin 1.2 and Gutenberg 6.0
WCEU 2019 recap - AMP Plugin 1.2 and Gutenberg 6.0
Fellyph Cintra
 
Dublin js 2019 Fellyph Ctintra - Why use web components?
Dublin js 2019 Fellyph Ctintra - Why use web components?Dublin js 2019 Fellyph Ctintra - Why use web components?
Dublin js 2019 Fellyph Ctintra - Why use web components?
Fellyph Cintra
 
Work smart with Gutenberg - Fellyph Cintra
Work smart with Gutenberg - Fellyph CintraWork smart with Gutenberg - Fellyph Cintra
Work smart with Gutenberg - Fellyph Cintra
Fellyph Cintra
 
PWA - Progressive WordPress Apps
PWA - Progressive WordPress AppsPWA - Progressive WordPress Apps
PWA - Progressive WordPress Apps
Fellyph Cintra
 
Amp for WordPress - Tech lunch Inspiration Marketing
Amp for WordPress -  Tech lunch Inspiration MarketingAmp for WordPress -  Tech lunch Inspiration Marketing
Amp for WordPress - Tech lunch Inspiration Marketing
Fellyph Cintra
 
From marketplace to WordPress - WordCamp Belfast
From marketplace to WordPress - WordCamp BelfastFrom marketplace to WordPress - WordCamp Belfast
From marketplace to WordPress - WordCamp Belfast
Fellyph Cintra
 
Techtalk CSS4 - Fellyph Cintra
Techtalk CSS4 - Fellyph CintraTechtalk CSS4 - Fellyph Cintra
Techtalk CSS4 - Fellyph Cintra
Fellyph Cintra
 
Do marketplace ao WordPress - WordCamp BH 2015
Do marketplace ao WordPress -  WordCamp BH 2015Do marketplace ao WordPress -  WordCamp BH 2015
Do marketplace ao WordPress - WordCamp BH 2015
Fellyph Cintra
 
Dicas para Workflow WordPress + JavaScript - WordCamp Salvador
Dicas para Workflow WordPress + JavaScript - WordCamp SalvadorDicas para Workflow WordPress + JavaScript - WordCamp Salvador
Dicas para Workflow WordPress + JavaScript - WordCamp Salvador
Fellyph Cintra
 
Workflow WordPress + JavaScript - WordCamp Rio
Workflow WordPress + JavaScript  - WordCamp RioWorkflow WordPress + JavaScript  - WordCamp Rio
Workflow WordPress + JavaScript - WordCamp Rio
Fellyph Cintra
 
Desenvolvendo Aplicações móveis com bBUI.js
Desenvolvendo Aplicações móveis com bBUI.jsDesenvolvendo Aplicações móveis com bBUI.js
Desenvolvendo Aplicações móveis com bBUI.js
Fellyph Cintra
 

More from Fellyph Cintra (20)

CSS 2022 um mundo novo de possibilidades
CSS 2022 um mundo novo de possibilidadesCSS 2022 um mundo novo de possibilidades
CSS 2022 um mundo novo de possibilidades
 
CSS 2022: un mundo completamente nuevo - Presentacion WC Pontevedra - Fellyph...
CSS 2022: un mundo completamente nuevo - Presentacion WC Pontevedra - Fellyph...CSS 2022: un mundo completamente nuevo - Presentacion WC Pontevedra - Fellyph...
CSS 2022: un mundo completamente nuevo - Presentacion WC Pontevedra - Fellyph...
 
Page experience road - WordCamp Athens 2022
Page experience road  - WordCamp Athens 2022Page experience road  - WordCamp Athens 2022
Page experience road - WordCamp Athens 2022
 
Web stories the new visual storytelling format for the web
Web stories the new  visual storytelling format for the webWeb stories the new  visual storytelling format for the web
Web stories the new visual storytelling format for the web
 
Machine learning for mortal developers - Dublin.JS
Machine learning for mortal developers - Dublin.JSMachine learning for mortal developers - Dublin.JS
Machine learning for mortal developers - Dublin.JS
 
Machine learning for mortal developers - Fellyph Cintra
Machine learning for mortal developers -  Fellyph CintraMachine learning for mortal developers -  Fellyph Cintra
Machine learning for mortal developers - Fellyph Cintra
 
Using machine learning to improve our WordPress application
Using machine learning to improve our WordPress applicationUsing machine learning to improve our WordPress application
Using machine learning to improve our WordPress application
 
WordCamp Brighton - Why use web components
WordCamp Brighton - Why use web componentsWordCamp Brighton - Why use web components
WordCamp Brighton - Why use web components
 
Accessibility workshop
Accessibility workshopAccessibility workshop
Accessibility workshop
 
WCEU 2019 recap - AMP Plugin 1.2 and Gutenberg 6.0
WCEU 2019 recap - AMP Plugin 1.2 and Gutenberg 6.0WCEU 2019 recap - AMP Plugin 1.2 and Gutenberg 6.0
WCEU 2019 recap - AMP Plugin 1.2 and Gutenberg 6.0
 
Dublin js 2019 Fellyph Ctintra - Why use web components?
Dublin js 2019 Fellyph Ctintra - Why use web components?Dublin js 2019 Fellyph Ctintra - Why use web components?
Dublin js 2019 Fellyph Ctintra - Why use web components?
 
Work smart with Gutenberg - Fellyph Cintra
Work smart with Gutenberg - Fellyph CintraWork smart with Gutenberg - Fellyph Cintra
Work smart with Gutenberg - Fellyph Cintra
 
PWA - Progressive WordPress Apps
PWA - Progressive WordPress AppsPWA - Progressive WordPress Apps
PWA - Progressive WordPress Apps
 
Amp for WordPress - Tech lunch Inspiration Marketing
Amp for WordPress -  Tech lunch Inspiration MarketingAmp for WordPress -  Tech lunch Inspiration Marketing
Amp for WordPress - Tech lunch Inspiration Marketing
 
From marketplace to WordPress - WordCamp Belfast
From marketplace to WordPress - WordCamp BelfastFrom marketplace to WordPress - WordCamp Belfast
From marketplace to WordPress - WordCamp Belfast
 
Techtalk CSS4 - Fellyph Cintra
Techtalk CSS4 - Fellyph CintraTechtalk CSS4 - Fellyph Cintra
Techtalk CSS4 - Fellyph Cintra
 
Do marketplace ao WordPress - WordCamp BH 2015
Do marketplace ao WordPress -  WordCamp BH 2015Do marketplace ao WordPress -  WordCamp BH 2015
Do marketplace ao WordPress - WordCamp BH 2015
 
Dicas para Workflow WordPress + JavaScript - WordCamp Salvador
Dicas para Workflow WordPress + JavaScript - WordCamp SalvadorDicas para Workflow WordPress + JavaScript - WordCamp Salvador
Dicas para Workflow WordPress + JavaScript - WordCamp Salvador
 
Workflow WordPress + JavaScript - WordCamp Rio
Workflow WordPress + JavaScript  - WordCamp RioWorkflow WordPress + JavaScript  - WordCamp Rio
Workflow WordPress + JavaScript - WordCamp Rio
 
Desenvolvendo Aplicações móveis com bBUI.js
Desenvolvendo Aplicações móveis com bBUI.jsDesenvolvendo Aplicações móveis com bBUI.js
Desenvolvendo Aplicações móveis com bBUI.js
 

Recently uploaded

GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 

Recently uploaded (20)

GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 

Google I/O extended 2019 Fellyph Cintra

  • 1. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Is 2019 the year of Web Components? Fellyph Cintra Solutions Engineer Deloitte Digital 1
  • 2. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin @Fellyph 2
  • 3. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Web Components 3
  • 4. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Web Components It is a set of four specs from HTML5 and JavaScript. Web components creates custom and reusable elements natively 4Share your moments! #io19extended | @gdgdublin | @gdgclouddublin
  • 5. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Fantastic 4 5 Custom Elements Shadow DOM ES modules HTML Templates
  • 6. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin ● The specification allows us to create new types of DOM elements, where we have two types: ○ Autonomous elements where the entire definition created by the developer ○ Customised element when the new element extends from a Default HTML element 6 Custom Elements
  • 7. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Autonomous element 7 <ph-button></ph-button>
  • 8. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Customised element 8 <button is=“ph-custom-button“>Click Me :)</button>
  • 9. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin ● Independent DOM tree that provides encapsulation. ● Keeps the markup in a different layer, to keep the code clean. ● Needs extra attention with cross-functionality Light DOM X Shadow DOM 9 Shadow DOM
  • 10. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Shadow DOM Example 10
  • 11. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin ● The ES Module specification defines the inclusion and reuse of JS documents in other JS documents. ● ES Modules enable web components to be developed in a modular way. 11 ES modules
  • 12. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin ● Permits to create reusable HTML template without rendering them. ● Images won't load until we attach the template on the DOM. 12 HTML Templates
  • 13. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Is 2019 the year of Web Components? 13
  • 14. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 14
  • 15. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 15 Google I/O 2012 - The Web Platform’s Cutting Edge JS.LA 2014 - Zeno Rocha: A future called Web Components Google I/O 2014 - Polymer and Web Components change everything you know about Web development Google I/O 2016 - Pratical lessons from a year of building Web Components Google I/O 2108 - Polymer 3.0 and beyond
  • 16. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Support 16 end of 2018
  • 17. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 17
  • 18. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 18 Is 2019 the year of Web Components?
  • 19. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 19
  • 20. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 20
  • 21. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Web components + frameworks 21https://custom-elements-everywhere.com/
  • 22. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin JavaScript frameworks support 22 100% 100% 71%91% https://custom-elements-everywhere.com/
  • 23. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin 23
  • 24. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Where can I start? 24
  • 25. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Developer Guide 25https://open-wc.org/
  • 26. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin open-wc ● Web component recommendations with pre-configured ● automation ● tooling ● test ● lint ● demo 26
  • 27. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin npm init @open-wc 27
  • 28. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Lit Element 28
  • 29. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin webcomponents.org 29
  • 30. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Web fundamentals 30https://developers.google.com/web/fundamentals/web-components/
  • 31. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Obrigado Thank you 31
  • 32. Share your moments! #io19extended | @gdgdublin | @gdgclouddublin Links Documentation https://www.webcomponents.org/ https://open-wc.org/ https://developers.google.com/web/fundamentals/web-components/ https://custom-elements-everywhere.com/ I/O talks Google I/O 2012 - https://www.youtube.com/watch?v=2txPYQOWBtg Google I/O 2014 - https://www.youtube.com/watch?v=8OJ7ih8EE7 Google I/O 2016 - https://www.youtube.com/watch?v=zfQoleQEa4w Google I/O 2018 - https://www.youtube.com/watch?v=7CUO7PyD5zA