componentizando a web com polymer

49

Upload: stefan-horochovec

Post on 20-Jun-2015

860 views

Category:

Technology


0 download

DESCRIPTION

Apresentação feita no Mini curso sobre Polymer no HUB 2014 - http://www.hub2014.com.br/

TRANSCRIPT

Page 1: Componentizando a Web com Polymer
Page 2: Componentizando a Web com Polymer

Stefan Horochovec

• Arquiteto de Software – CISS Software e Serviços;• Consultor:• Java EE;• Cloud Computing; • Mobile Solutions;

• Revisor Técnico – Packpub Publishing;• Instrutor/Professor/Palestrante/Autor;

Page 3: Componentizando a Web com Polymer
Page 4: Componentizando a Web com Polymer
Page 5: Componentizando a Web com Polymer

Como programamos em HTML

Page 6: Componentizando a Web com Polymer
Page 7: Componentizando a Web com Polymer

E quando criamos um componente....

Page 8: Componentizando a Web com Polymer
Page 9: Componentizando a Web com Polymer
Page 10: Componentizando a Web com Polymer
Page 11: Componentizando a Web com Polymer
Page 12: Componentizando a Web com Polymer
Page 13: Componentizando a Web com Polymer

Nada faz sentido

Page 14: Componentizando a Web com Polymer

The dead is comming

Page 15: Componentizando a Web com Polymer
Page 16: Componentizando a Web com Polymer

WebComponents• Especificação para implementação de componentes para Web;• Sugerida a 4 anos por Dimitri Glazkov;• Sugerida a implementação para que navegadores pudessem facilitar a criação e

importação de componentes dentro de WebApps modernas;• A implementação da especificação faz com que o navegador faça o trabalho

para o desenvolvedor que hoje API’s fazem (jQuery, etc);• Apenas o Google Chrome e o Opera dão suporte total a WebComponents;

Page 17: Componentizando a Web com Polymer

Especificações• CustomElements

• Esta especificação descreve o método para permitir o autor para definir e usar novos tipos de elementos DOM de um documento.

• Especificação: http://w3c.github.io/webcomponents/spec/custom/

• HTML Imports• HTML Imports são uma forma de incluir e reutilizar documentos HTML em outros documentos HTML.• Especificação: http://w3c.github.io/webcomponents/spec/imports/

• Templates• Esta especificação descreve um método para declarar inert Subtrees em HTML DOM e manipulá-los para instanciar

fragmentos de documentos com conteúdo idêntico.• Especificação: https://html.spec.whatwg.org/multipage/scripting.html#the-template-element

• Shadow DOM• Esta especificação descreve um método de estabelecer e manter limites funcionais entre as árvores do DOM

permitindo, assim, o encapsulamento melhor funcional dentro da árvore DOM.• Especificação: http://w3c.github.io/webcomponents/spec/shadow/

Page 18: Componentizando a Web com Polymer

Suporte

Page 19: Componentizando a Web com Polymer

Bibliotecas

Page 20: Componentizando a Web com Polymer
Page 21: Componentizando a Web com Polymer
Page 22: Componentizando a Web com Polymer
Page 23: Componentizando a Web com Polymer
Page 24: Componentizando a Web com Polymer
Page 25: Componentizando a Web com Polymer

Polymer – O que é?• http://www.polymer-project.org/• Conceito de criação de web-components para aplicações modernas;• Reutilização de componentes em suas Modern Webapps; • Mantido pelo Google;• Boilerplate: https://github.com/webcomponents/polymer-boilerplate

Page 26: Componentizando a Web com Polymer

Criando o seu template

Page 27: Componentizando a Web com Polymer
Page 28: Componentizando a Web com Polymer
Page 29: Componentizando a Web com Polymer

componentes/first-template.html

Page 30: Componentizando a Web com Polymer

index.html

Page 31: Componentizando a Web com Polymer

Criando o seu primeiro componente

Page 32: Componentizando a Web com Polymer
Page 33: Componentizando a Web com Polymer
Page 34: Componentizando a Web com Polymer

componentes/hub-componente.html

Page 35: Componentizando a Web com Polymer

index.html

Page 36: Componentizando a Web com Polymer

Componente com serviços

Page 37: Componentizando a Web com Polymer
Page 38: Componentizando a Web com Polymer
Page 39: Componentizando a Web com Polymer
Page 40: Componentizando a Web com Polymer

componentes/hub-service.html

Page 41: Componentizando a Web com Polymer

componentes/hub-mensagem.html

Page 42: Componentizando a Web com Polymer

index.html

Page 43: Componentizando a Web com Polymer

mensagem.html

Page 44: Componentizando a Web com Polymer

Hands On

Page 45: Componentizando a Web com Polymer

Paper Elements

Page 46: Componentizando a Web com Polymer

Paper Elements• Suíte de componentes modernos implementando o conceito Material Design;• Componentes baseados em:

• Responsividade;• Usabilidade;

• Especificação: http://www.google.com/design/spec/material-design/introduction.html#

• Elementos - Showcase: https://www.polymer-project.org/components/paper-elements/demo.html#core-toolbar

• Designer: https://www.polymer-project.org/tools/designer/

Page 47: Componentizando a Web com Polymer

Demonstração

Page 48: Componentizando a Web com Polymer

Hands On

Page 49: Componentizando a Web com Polymer

Obrigado