SlideShare a Scribd company logo
Google Polymer
Introduction
Buzzwords
Model View ViewModel(MVVM) - UI paradigm for applying context to data objects
JavaScript Object Notation(JSON) - A succinct syntax for representing data objects in text
Data Binding - Linking a data object to an interface component so that the interface and data object react
naturally to user interaction
Cascading Style Sheets(CSS) - Syntax for setting the look of an HTML element
Data Object Model(DOM) - Model that the browser uses to identify what/how elements should be
presented on the screen as well as how to interact with them.
Web Components - web standard for creating reusable custom widgets. Current state of implementation.
Material Design - Adds inherited characteristics to attributes like z-index. Allows page layout to react to
spontaneous events.
What is Polymer?
CSS Styling and Layouts JavaScript Widgets Databinding Uses Web Components
* What you get out of the box.
What does it solve?
Reduces spaghetti code in your JavaScript
Reduces coupling between groups of elements
Packages all dependencies with element for easy reuse
Gives you a bunch of cool custom controls

Recommended for you

Web Components
Web ComponentsWeb Components
Web Components

Web Components are like Lego bricks. Easy to assemble and every piece simply fits together. But there is even more to it. Being able to create your own HTML-Tags with encapsulated style & logic changes the way you think about structuring your web applications. Get a sneak peek on how to develop scalable & maintainable applications in the future.

htmlcssfuture
Web Components with Polymer (extra Polymer 2.0)
Web Components with Polymer (extra Polymer 2.0)Web Components with Polymer (extra Polymer 2.0)
Web Components with Polymer (extra Polymer 2.0)

This document discusses Web Components and the Polymer library. It begins with an introduction to Web Components and their benefits like reusability. It then discusses what Polymer is and why it is useful for building Web Components, including its templating features. The remainder covers Polymer 2.0 updates, tools like the Polymer CLI, learning resources, and a question/answer section.

Building a Secure App with Google Polymer and Java / Spring
Building a Secure App with Google Polymer and Java / SpringBuilding a Secure App with Google Polymer and Java / Spring
Building a Secure App with Google Polymer and Java / Spring

Polymer is the latest web framework out of Google. Designed completely around the emerging Web Components standards, it has the lofty goal of making it easy to build apps based on these low level primitives. Along with Polymer comes a new set of Elements (buttons, dialog boxes and such) based on the ideas of "Material Design". These technologies together make it easy to build responsive, componentized "Single Page" web applications that work for browsers on PCs or mobile devices. But what about the backend, and how do we make these apps secure? In this talk Scott Deeg will take you through an introduction to Polmyer and its related technologies, and then through the build out of a full blown cloud based app with a secure, ReSTful backend based on Spring ReST, Spring Cloud, and Spring Security and using Thymeleaf for backend rendering jobs. At the end he will show the principles applied in a tool he's currently building. The talk will be mainly code walk through and demo, and assumes familiarity with Java/Spring and JavaScript.

polymerwebcomponentsmicroservices
What does it solve? Pt.2
Product
Batch
Operator
Submit
Batch Product Operator
000-01 Product1 Dan
000-02 Product2 Jack
000-03 Product1 Sam
000-04 Product2 Dan
What does it solve? Pt.3
Product
Batch
Operator
Submit
Batch Product Date
000-01 Product1 12/8/15
000-02 Product2 12/9/15
000-03 Product1 12/10/15
000-04 Product2 12/11/15
CustomBatchForm
setContext()
insertRow()
CustomBatchTable
Adding Polymer to
ASP MVC Project
Polymer can be added to your
Content folder.
The file structure should look
similar to the this.
The only file that will need to be
included is the MyElement.html.
In this example it would be google-
map.html
Getting Started
WebComponents.JS adds support
for web components on older
browsers.
Include Steps
Add Reference to
WebComponents.js
Add Includes for all components
that you want to use
Uses the included element.

<script
src="webcomponentsjs/webcomponen
ts-lite.min.js"></script>

<link rel="import" href="google-
map.html">

<google-map latitude="37.790"
longitude="-122.390"></google-
map>

Recommended for you

The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17
The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17
The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17

Google Polymer builds a comprehensive web platform on the foundation of the emerging standard of Web Components.

greecejspolymerdevelopment
Web Components + Backbone: a Game-Changing Combination
Web Components + Backbone: a Game-Changing CombinationWeb Components + Backbone: a Game-Changing Combination
Web Components + Backbone: a Game-Changing Combination

Web Components promise to change how we think about modularity on the web, and when combined with the structure and organization of Backbone.js we can create portable, dynamic, encapsulated UI modules that fit into any web application.

backbone.jsjavascriptweb components
Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14

Polymer & the Web Components Revolution from Google I/O on 6/25/14 by Matthew McNulty. An overview of Web Components, Polymer, and the ecosystem and tools being created surrounding them.

googleioi/o
Notable Pieces of an Element
Definition
Each element definition has a
section for defining the
endpoints for properties and
event handlers.
Has includes for all underlying
dependencies
Has include for default CSS


<dom-module id="product-form">
<template>
Product:<input value=”{{product}}” />
Batch: <input value=”{{batch}}” />
Operator: <input value=”{{operator}}” />
</template>
<script>
Polymer({
is: 'product-form',
properties: {
product: String,
batch: String,
operator:String,
date: String
}
});
</script>
</dom-module>
Why Should I Use It
Common integration pattern for all elements
Support for one-way and two-way data binding
Implements Web Components
Extensible HTML elements
Setting Data Binding
Double mustache notation represents
two-way binding “{{myObject}}”
Double square brackets represents
one-way binding “[[myObject]]”
Data binding usually uses the “items”
attribute.
Use the “as” attribute to set the name
for a single item in the items list.
<template is="dom-bind">
<iron-ajax url="data.json" last-response="{{data}}" auto></iron-ajax>
<iron-list items="[[data]]" as="person">
<template>
<div>
Name: <span>[[person.name]]</span>
</div>
</template>
</iron-list>
</template>
Customizing CSS
Even though all elements will likely
come with a default styling. Polymer
allows for modifications of an
element's CSS.
paper-button.fancy {
background: green;
color: yellow;
}
paper-button.fancy:hover {
background: lime;
}
paper-button[disabled],
paper-button[toggles][active] {
background: red;
}

Recommended for you

Polymer
PolymerPolymer
Polymer

Polymer is a library for creating reusable web components. It allows developers to define custom elements with associated JavaScript behaviors to provide sophisticated user interfaces. Key features include defining local DOM, data binding with templates, declaring custom element properties, and composing elements from other elements. Properties support default values, configuration from markup, and two-way data binding for dynamic updates.

chromepolymershadowdom
Web Components and Modular CSS
Web Components and Modular CSSWeb Components and Modular CSS
Web Components and Modular CSS

Given at CSS Dev Conf 2014 in New Orleans on October 14, 2014. This full presentation written with Web Components can be viewed with Chrome 36+ online at http://andrewrota.github.io/web-components-and-modular-css-presentation/presentation/index.html#0. The source of the presentation is available on GitHub: https://github.com/andrewrota/web-components-and-modular-css-presentation.

cssweb componentsjs
A brave new web - A talk about Web Components
A brave new web - A talk about Web ComponentsA brave new web - A talk about Web Components
A brave new web - A talk about Web Components

The document discusses emerging web component technologies including templates, shadow DOM, custom elements, and HTML imports. It provides examples of how each technology addresses limitations of past approaches like jQuery plugins and Angular directives by allowing developers to build reusable, encapsulated widgets and components using standard web technologies like HTML, CSS, and JavaScript. These new standards enable building complex web UIs in a modular, component-based way.

web componentshtml5polymer
Demo Project
Feel free to look through the demo project
Also feel free to use the live demo
Here is the Polymer element catalog
Vulcanize - Tool for optimizing Web Component includes

More Related Content

What's hot

Google Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talkGoogle Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talk
Imam Raza
 
Web Components & Polymer 1.0 (Webinale Berlin)
Web Components & Polymer 1.0 (Webinale Berlin)Web Components & Polymer 1.0 (Webinale Berlin)
Web Components & Polymer 1.0 (Webinale Berlin)
Hendrik Ebbers
 
Levent-Gurses' Introduction to Web Components & Polymer
Levent-Gurses' Introduction to Web Components & PolymerLevent-Gurses' Introduction to Web Components & Polymer
Levent-Gurses' Introduction to Web Components & Polymer
Erik Isaksen
 
Web Components
Web ComponentsWeb Components
Web Components
Nikolaus Graf
 
Web Components with Polymer (extra Polymer 2.0)
Web Components with Polymer (extra Polymer 2.0)Web Components with Polymer (extra Polymer 2.0)
Web Components with Polymer (extra Polymer 2.0)
Dhyego Fernando
 
Building a Secure App with Google Polymer and Java / Spring
Building a Secure App with Google Polymer and Java / SpringBuilding a Secure App with Google Polymer and Java / Spring
Building a Secure App with Google Polymer and Java / Spring
sdeeg
 
The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17
The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17
The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17
GreeceJS
 
Web Components + Backbone: a Game-Changing Combination
Web Components + Backbone: a Game-Changing CombinationWeb Components + Backbone: a Game-Changing Combination
Web Components + Backbone: a Game-Changing Combination
Andrew Rota
 
Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14
mattsmcnulty
 
Polymer
PolymerPolymer
Polymer
LearningTech
 
Web Components and Modular CSS
Web Components and Modular CSSWeb Components and Modular CSS
Web Components and Modular CSS
Andrew Rota
 
A brave new web - A talk about Web Components
A brave new web - A talk about Web ComponentsA brave new web - A talk about Web Components
A brave new web - A talk about Web Components
Michiel De Mey
 
Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer
Marcus Hellberg
 
Polymer / WebComponents
Polymer / WebComponentsPolymer / WebComponents
Polymer / WebComponents
Arnaud Kervern
 
Web Components Everywhere
Web Components EverywhereWeb Components Everywhere
Web Components Everywhere
Ilia Idakiev
 
Introduction to Web Components
Introduction to Web ComponentsIntroduction to Web Components
Introduction to Web Components
Rich Bradshaw
 
Polymer - Welcome to the Future @ PyGrunn 08/07/2014
Polymer - Welcome to the Future @ PyGrunn 08/07/2014Polymer - Welcome to the Future @ PyGrunn 08/07/2014
Polymer - Welcome to the Future @ PyGrunn 08/07/2014
Spyros Ioakeimidis
 
Polymer presentation in Google HQ
Polymer presentation in Google HQPolymer presentation in Google HQ
Polymer presentation in Google HQ
Harshit Pandey
 
The Complementarity of React and Web Components
The Complementarity of React and Web ComponentsThe Complementarity of React and Web Components
The Complementarity of React and Web Components
Andrew Rota
 
Reaching for the Future with Web Components and Polymer
Reaching for the Future with Web Components and PolymerReaching for the Future with Web Components and Polymer
Reaching for the Future with Web Components and Polymer
FITC
 

What's hot (20)

Google Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talkGoogle Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talk
 
Web Components & Polymer 1.0 (Webinale Berlin)
Web Components & Polymer 1.0 (Webinale Berlin)Web Components & Polymer 1.0 (Webinale Berlin)
Web Components & Polymer 1.0 (Webinale Berlin)
 
Levent-Gurses' Introduction to Web Components & Polymer
Levent-Gurses' Introduction to Web Components & PolymerLevent-Gurses' Introduction to Web Components & Polymer
Levent-Gurses' Introduction to Web Components & Polymer
 
Web Components
Web ComponentsWeb Components
Web Components
 
Web Components with Polymer (extra Polymer 2.0)
Web Components with Polymer (extra Polymer 2.0)Web Components with Polymer (extra Polymer 2.0)
Web Components with Polymer (extra Polymer 2.0)
 
Building a Secure App with Google Polymer and Java / Spring
Building a Secure App with Google Polymer and Java / SpringBuilding a Secure App with Google Polymer and Java / Spring
Building a Secure App with Google Polymer and Java / Spring
 
The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17
The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17
The rise of Polymer and Web Components (Kostas Karolemeas) - GreeceJS #17
 
Web Components + Backbone: a Game-Changing Combination
Web Components + Backbone: a Game-Changing CombinationWeb Components + Backbone: a Game-Changing Combination
Web Components + Backbone: a Game-Changing Combination
 
Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14
 
Polymer
PolymerPolymer
Polymer
 
Web Components and Modular CSS
Web Components and Modular CSSWeb Components and Modular CSS
Web Components and Modular CSS
 
A brave new web - A talk about Web Components
A brave new web - A talk about Web ComponentsA brave new web - A talk about Web Components
A brave new web - A talk about Web Components
 
Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer
 
Polymer / WebComponents
Polymer / WebComponentsPolymer / WebComponents
Polymer / WebComponents
 
Web Components Everywhere
Web Components EverywhereWeb Components Everywhere
Web Components Everywhere
 
Introduction to Web Components
Introduction to Web ComponentsIntroduction to Web Components
Introduction to Web Components
 
Polymer - Welcome to the Future @ PyGrunn 08/07/2014
Polymer - Welcome to the Future @ PyGrunn 08/07/2014Polymer - Welcome to the Future @ PyGrunn 08/07/2014
Polymer - Welcome to the Future @ PyGrunn 08/07/2014
 
Polymer presentation in Google HQ
Polymer presentation in Google HQPolymer presentation in Google HQ
Polymer presentation in Google HQ
 
The Complementarity of React and Web Components
The Complementarity of React and Web ComponentsThe Complementarity of React and Web Components
The Complementarity of React and Web Components
 
Reaching for the Future with Web Components and Polymer
Reaching for the Future with Web Components and PolymerReaching for the Future with Web Components and Polymer
Reaching for the Future with Web Components and Polymer
 

Viewers also liked

Polymer project presentation
Polymer project presentationPolymer project presentation
Polymer project presentation
jskvara
 
Polymers
PolymersPolymers
Polymers
sportymaaz
 
Front-end architecture for cloud applications and Polymer
Front-end architecture for cloud applications and PolymerFront-end architecture for cloud applications and Polymer
Front-end architecture for cloud applications and Polymer
uEngine Solutions
 
ChatOps Unplugged
ChatOps UnpluggedChatOps Unplugged
ChatOps Unplugged
VictorOps
 
Dry battery & lithium polymer batter
Dry battery & lithium polymer batterDry battery & lithium polymer batter
Dry battery & lithium polymer batter
Emma Kwok
 
Wells Fargo Real Estate Securities Conference – New York
Wells Fargo Real Estate Securities Conference – New YorkWells Fargo Real Estate Securities Conference – New York
Wells Fargo Real Estate Securities Conference – New York
Corning_Owens
 
Trayecto de actividades_diplomado
Trayecto de actividades_diplomadoTrayecto de actividades_diplomado
Trayecto de actividades_diplomado
Oscar Eduardo
 
아이러브포크 결과 보고서 (2)
아이러브포크 결과 보고서 (2)아이러브포크 결과 보고서 (2)
아이러브포크 결과 보고서 (2)
Daniel Gray
 
Chat ops .. a beginner's guide
Chat ops .. a beginner's guideChat ops .. a beginner's guide
Chat ops .. a beginner's guide
Jason Hand
 
Let's Play Dart
Let's Play DartLet's Play Dart
Let's Play Dart
Jana Moudrá
 
Captinamericamacrophotoshoot
Captinamericamacrophotoshoot Captinamericamacrophotoshoot
Captinamericamacrophotoshoot
Jo Lowes
 
4 q16 earnings presentation
4 q16 earnings presentation4 q16 earnings presentation
4 q16 earnings presentation
corridorinfra2016ir
 
LSA17: State of the Association (LSA)
LSA17: State of the Association (LSA)LSA17: State of the Association (LSA)
LSA17: State of the Association (LSA)
Localogy
 
02 fluid models
02 fluid models02 fluid models
02 fluid models
Tino Lc
 
SC17 Exhibitor Prospectus
SC17 Exhibitor ProspectusSC17 Exhibitor Prospectus
SC17 Exhibitor Prospectus
inside-BigData.com
 
LSA17: Local 2020 - Advice from the Future (GoDaddy, Verve, Alignable, DAC Gr...
LSA17: Local 2020 - Advice from the Future (GoDaddy, Verve, Alignable, DAC Gr...LSA17: Local 2020 - Advice from the Future (GoDaddy, Verve, Alignable, DAC Gr...
LSA17: Local 2020 - Advice from the Future (GoDaddy, Verve, Alignable, DAC Gr...
Localogy
 

Viewers also liked (16)

Polymer project presentation
Polymer project presentationPolymer project presentation
Polymer project presentation
 
Polymers
PolymersPolymers
Polymers
 
Front-end architecture for cloud applications and Polymer
Front-end architecture for cloud applications and PolymerFront-end architecture for cloud applications and Polymer
Front-end architecture for cloud applications and Polymer
 
ChatOps Unplugged
ChatOps UnpluggedChatOps Unplugged
ChatOps Unplugged
 
Dry battery & lithium polymer batter
Dry battery & lithium polymer batterDry battery & lithium polymer batter
Dry battery & lithium polymer batter
 
Wells Fargo Real Estate Securities Conference – New York
Wells Fargo Real Estate Securities Conference – New YorkWells Fargo Real Estate Securities Conference – New York
Wells Fargo Real Estate Securities Conference – New York
 
Trayecto de actividades_diplomado
Trayecto de actividades_diplomadoTrayecto de actividades_diplomado
Trayecto de actividades_diplomado
 
아이러브포크 결과 보고서 (2)
아이러브포크 결과 보고서 (2)아이러브포크 결과 보고서 (2)
아이러브포크 결과 보고서 (2)
 
Chat ops .. a beginner's guide
Chat ops .. a beginner's guideChat ops .. a beginner's guide
Chat ops .. a beginner's guide
 
Let's Play Dart
Let's Play DartLet's Play Dart
Let's Play Dart
 
Captinamericamacrophotoshoot
Captinamericamacrophotoshoot Captinamericamacrophotoshoot
Captinamericamacrophotoshoot
 
4 q16 earnings presentation
4 q16 earnings presentation4 q16 earnings presentation
4 q16 earnings presentation
 
LSA17: State of the Association (LSA)
LSA17: State of the Association (LSA)LSA17: State of the Association (LSA)
LSA17: State of the Association (LSA)
 
02 fluid models
02 fluid models02 fluid models
02 fluid models
 
SC17 Exhibitor Prospectus
SC17 Exhibitor ProspectusSC17 Exhibitor Prospectus
SC17 Exhibitor Prospectus
 
LSA17: Local 2020 - Advice from the Future (GoDaddy, Verve, Alignable, DAC Gr...
LSA17: Local 2020 - Advice from the Future (GoDaddy, Verve, Alignable, DAC Gr...LSA17: Local 2020 - Advice from the Future (GoDaddy, Verve, Alignable, DAC Gr...
LSA17: Local 2020 - Advice from the Future (GoDaddy, Verve, Alignable, DAC Gr...
 

Similar to Google Polymer Introduction

Web Components for Java Developers
Web Components for Java DevelopersWeb Components for Java Developers
Web Components for Java Developers
Joonas Lehtinen
 
Angular - Chapter 4 - Data and Event Handling
 Angular - Chapter 4 - Data and Event Handling Angular - Chapter 4 - Data and Event Handling
Angular - Chapter 4 - Data and Event Handling
WebStackAcademy
 
Web components - An Introduction
Web components - An IntroductionWeb components - An Introduction
Web components - An Introduction
cherukumilli2
 
Knockoutjs
KnockoutjsKnockoutjs
Knockoutjs databinding
Knockoutjs databindingKnockoutjs databinding
Knockoutjs databinding
Boulos Dib
 
Fundaments of Knockout js
Fundaments of Knockout jsFundaments of Knockout js
Fundaments of Knockout js
Flavius-Radu Demian
 
Creating lightweight JS Apps w/ Web Components and lit-html
Creating lightweight JS Apps w/ Web Components and lit-htmlCreating lightweight JS Apps w/ Web Components and lit-html
Creating lightweight JS Apps w/ Web Components and lit-html
Ilia Idakiev
 
Knockout.js
Knockout.jsKnockout.js
Knockout.js
Vivek Rajan
 
Modern frontend development with VueJs
Modern frontend development with VueJsModern frontend development with VueJs
Modern frontend development with VueJs
Tudor Barbu
 
Backbonejs
BackbonejsBackbonejs
Backbonejs
Sam Lee
 
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJSAngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
murtazahaveliwala
 
Presentation Tier optimizations
Presentation Tier optimizationsPresentation Tier optimizations
Presentation Tier optimizations
Anup Hariharan Nair
 
AngularJS
AngularJSAngularJS
Architecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolArchitecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling Tool
Adriaan Venter
 
Synopsis
SynopsisSynopsis
Magic of web components
Magic of web componentsMagic of web components
Magic of web components
HYS Enterprise
 
PPT on javascript ajax and css and some points related to server
PPT on javascript ajax and css and some points related to serverPPT on javascript ajax and css and some points related to server
PPT on javascript ajax and css and some points related to server
shivanichourasia01
 
Let's react - Meetup
Let's react - MeetupLet's react - Meetup
Let's react - Meetup
RAJNISH KATHAROTIYA
 
MVVM & Data Binding Library
MVVM & Data Binding Library MVVM & Data Binding Library
MVVM & Data Binding Library
10Clouds
 
Unit 2 - Data Binding.pptx
Unit 2 - Data Binding.pptxUnit 2 - Data Binding.pptx
Unit 2 - Data Binding.pptx
Malla Reddy University
 

Similar to Google Polymer Introduction (20)

Web Components for Java Developers
Web Components for Java DevelopersWeb Components for Java Developers
Web Components for Java Developers
 
Angular - Chapter 4 - Data and Event Handling
 Angular - Chapter 4 - Data and Event Handling Angular - Chapter 4 - Data and Event Handling
Angular - Chapter 4 - Data and Event Handling
 
Web components - An Introduction
Web components - An IntroductionWeb components - An Introduction
Web components - An Introduction
 
Knockoutjs
KnockoutjsKnockoutjs
Knockoutjs
 
Knockoutjs databinding
Knockoutjs databindingKnockoutjs databinding
Knockoutjs databinding
 
Fundaments of Knockout js
Fundaments of Knockout jsFundaments of Knockout js
Fundaments of Knockout js
 
Creating lightweight JS Apps w/ Web Components and lit-html
Creating lightweight JS Apps w/ Web Components and lit-htmlCreating lightweight JS Apps w/ Web Components and lit-html
Creating lightweight JS Apps w/ Web Components and lit-html
 
Knockout.js
Knockout.jsKnockout.js
Knockout.js
 
Modern frontend development with VueJs
Modern frontend development with VueJsModern frontend development with VueJs
Modern frontend development with VueJs
 
Backbonejs
BackbonejsBackbonejs
Backbonejs
 
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJSAngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
 
Presentation Tier optimizations
Presentation Tier optimizationsPresentation Tier optimizations
Presentation Tier optimizations
 
AngularJS
AngularJSAngularJS
AngularJS
 
Architecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolArchitecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling Tool
 
Synopsis
SynopsisSynopsis
Synopsis
 
Magic of web components
Magic of web componentsMagic of web components
Magic of web components
 
PPT on javascript ajax and css and some points related to server
PPT on javascript ajax and css and some points related to serverPPT on javascript ajax and css and some points related to server
PPT on javascript ajax and css and some points related to server
 
Let's react - Meetup
Let's react - MeetupLet's react - Meetup
Let's react - Meetup
 
MVVM & Data Binding Library
MVVM & Data Binding Library MVVM & Data Binding Library
MVVM & Data Binding Library
 
Unit 2 - Data Binding.pptx
Unit 2 - Data Binding.pptxUnit 2 - Data Binding.pptx
Unit 2 - Data Binding.pptx
 

Recently uploaded

Cultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational TransformationCultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational Transformation
Mindfire Solution
 
Safe Work Permit Management Software for Hot Work Permits
Safe Work Permit Management Software for Hot Work PermitsSafe Work Permit Management Software for Hot Work Permits
Safe Work Permit Management Software for Hot Work Permits
sheqnetworkmarketing
 
Shivam Pandit working on Php Web Developer.
Shivam Pandit working on Php Web Developer.Shivam Pandit working on Php Web Developer.
Shivam Pandit working on Php Web Developer.
shivamt017
 
MVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptxMVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptx
Mitchell Marsh
 
A Comparative Analysis of Functional and Non-Functional Testing.pdf
A Comparative Analysis of Functional and Non-Functional Testing.pdfA Comparative Analysis of Functional and Non-Functional Testing.pdf
A Comparative Analysis of Functional and Non-Functional Testing.pdf
kalichargn70th171
 
Addressing the Top 9 User Pain Points with Visual Design Elements.pptx
Addressing the Top 9 User Pain Points with Visual Design Elements.pptxAddressing the Top 9 User Pain Points with Visual Design Elements.pptx
Addressing the Top 9 User Pain Points with Visual Design Elements.pptx
Sparity1
 
Google ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learningGoogle ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learning
VishrutGoyani1
 
NBFC Software: Optimize Your Non-Banking Financial Company
NBFC Software: Optimize Your Non-Banking Financial CompanyNBFC Software: Optimize Your Non-Banking Financial Company
NBFC Software: Optimize Your Non-Banking Financial Company
NBFC Softwares
 
Software development... for all? (keynote at ICSOFT'2024)
Software development... for all? (keynote at ICSOFT'2024)Software development... for all? (keynote at ICSOFT'2024)
Software development... for all? (keynote at ICSOFT'2024)
miso_uam
 
Intro to Amazon Web Services (AWS) and Gen AI
Intro to Amazon Web Services (AWS) and Gen AIIntro to Amazon Web Services (AWS) and Gen AI
Intro to Amazon Web Services (AWS) and Gen AI
Ortus Solutions, Corp
 
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple StepsSeamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Estuary Flow
 
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
Hironori Washizaki
 
Folding Cheat Sheet #7 - seventh in a series
Folding Cheat Sheet #7 - seventh in a seriesFolding Cheat Sheet #7 - seventh in a series
Folding Cheat Sheet #7 - seventh in a series
Philip Schwarz
 
dachnug51 - Whats new in domino 14 .pdf
dachnug51 - Whats new in domino 14  .pdfdachnug51 - Whats new in domino 14  .pdf
dachnug51 - Whats new in domino 14 .pdf
DNUG e.V.
 
What is OCR Technology and How to Extract Text from Any Image for Free
What is OCR Technology and How to Extract Text from Any Image for FreeWhat is OCR Technology and How to Extract Text from Any Image for Free
What is OCR Technology and How to Extract Text from Any Image for Free
TwisterTools
 
Independence Day Hasn’t Always Been a U.S. Holiday.pdf
Independence Day Hasn’t Always Been a U.S. Holiday.pdfIndependence Day Hasn’t Always Been a U.S. Holiday.pdf
Independence Day Hasn’t Always Been a U.S. Holiday.pdf
Livetecs LLC
 
Top 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your WebsiteTop 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your Website
e-Definers Technology
 
Discover the Power of ONEMONITAR: The Ultimate Mobile Spy App for Android Dev...
Discover the Power of ONEMONITAR: The Ultimate Mobile Spy App for Android Dev...Discover the Power of ONEMONITAR: The Ultimate Mobile Spy App for Android Dev...
Discover the Power of ONEMONITAR: The Ultimate Mobile Spy App for Android Dev...
onemonitarsoftware
 
Prada Group Reports Strong Growth in First Quarter …
Prada Group Reports Strong Growth in First Quarter …Prada Group Reports Strong Growth in First Quarter …
Prada Group Reports Strong Growth in First Quarter …
908dutch
 
Overview of ERP - Mechlin Technologies.pptx
Overview of ERP - Mechlin Technologies.pptxOverview of ERP - Mechlin Technologies.pptx
Overview of ERP - Mechlin Technologies.pptx
Mitchell Marsh
 

Recently uploaded (20)

Cultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational TransformationCultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational Transformation
 
Safe Work Permit Management Software for Hot Work Permits
Safe Work Permit Management Software for Hot Work PermitsSafe Work Permit Management Software for Hot Work Permits
Safe Work Permit Management Software for Hot Work Permits
 
Shivam Pandit working on Php Web Developer.
Shivam Pandit working on Php Web Developer.Shivam Pandit working on Php Web Developer.
Shivam Pandit working on Php Web Developer.
 
MVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptxMVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptx
 
A Comparative Analysis of Functional and Non-Functional Testing.pdf
A Comparative Analysis of Functional and Non-Functional Testing.pdfA Comparative Analysis of Functional and Non-Functional Testing.pdf
A Comparative Analysis of Functional and Non-Functional Testing.pdf
 
Addressing the Top 9 User Pain Points with Visual Design Elements.pptx
Addressing the Top 9 User Pain Points with Visual Design Elements.pptxAddressing the Top 9 User Pain Points with Visual Design Elements.pptx
Addressing the Top 9 User Pain Points with Visual Design Elements.pptx
 
Google ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learningGoogle ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learning
 
NBFC Software: Optimize Your Non-Banking Financial Company
NBFC Software: Optimize Your Non-Banking Financial CompanyNBFC Software: Optimize Your Non-Banking Financial Company
NBFC Software: Optimize Your Non-Banking Financial Company
 
Software development... for all? (keynote at ICSOFT'2024)
Software development... for all? (keynote at ICSOFT'2024)Software development... for all? (keynote at ICSOFT'2024)
Software development... for all? (keynote at ICSOFT'2024)
 
Intro to Amazon Web Services (AWS) and Gen AI
Intro to Amazon Web Services (AWS) and Gen AIIntro to Amazon Web Services (AWS) and Gen AI
Intro to Amazon Web Services (AWS) and Gen AI
 
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple StepsSeamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
 
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
 
Folding Cheat Sheet #7 - seventh in a series
Folding Cheat Sheet #7 - seventh in a seriesFolding Cheat Sheet #7 - seventh in a series
Folding Cheat Sheet #7 - seventh in a series
 
dachnug51 - Whats new in domino 14 .pdf
dachnug51 - Whats new in domino 14  .pdfdachnug51 - Whats new in domino 14  .pdf
dachnug51 - Whats new in domino 14 .pdf
 
What is OCR Technology and How to Extract Text from Any Image for Free
What is OCR Technology and How to Extract Text from Any Image for FreeWhat is OCR Technology and How to Extract Text from Any Image for Free
What is OCR Technology and How to Extract Text from Any Image for Free
 
Independence Day Hasn’t Always Been a U.S. Holiday.pdf
Independence Day Hasn’t Always Been a U.S. Holiday.pdfIndependence Day Hasn’t Always Been a U.S. Holiday.pdf
Independence Day Hasn’t Always Been a U.S. Holiday.pdf
 
Top 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your WebsiteTop 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your Website
 
Discover the Power of ONEMONITAR: The Ultimate Mobile Spy App for Android Dev...
Discover the Power of ONEMONITAR: The Ultimate Mobile Spy App for Android Dev...Discover the Power of ONEMONITAR: The Ultimate Mobile Spy App for Android Dev...
Discover the Power of ONEMONITAR: The Ultimate Mobile Spy App for Android Dev...
 
Prada Group Reports Strong Growth in First Quarter …
Prada Group Reports Strong Growth in First Quarter …Prada Group Reports Strong Growth in First Quarter …
Prada Group Reports Strong Growth in First Quarter …
 
Overview of ERP - Mechlin Technologies.pptx
Overview of ERP - Mechlin Technologies.pptxOverview of ERP - Mechlin Technologies.pptx
Overview of ERP - Mechlin Technologies.pptx
 

Google Polymer Introduction

  • 2. Buzzwords Model View ViewModel(MVVM) - UI paradigm for applying context to data objects JavaScript Object Notation(JSON) - A succinct syntax for representing data objects in text Data Binding - Linking a data object to an interface component so that the interface and data object react naturally to user interaction Cascading Style Sheets(CSS) - Syntax for setting the look of an HTML element Data Object Model(DOM) - Model that the browser uses to identify what/how elements should be presented on the screen as well as how to interact with them. Web Components - web standard for creating reusable custom widgets. Current state of implementation. Material Design - Adds inherited characteristics to attributes like z-index. Allows page layout to react to spontaneous events.
  • 3. What is Polymer? CSS Styling and Layouts JavaScript Widgets Databinding Uses Web Components * What you get out of the box.
  • 4. What does it solve? Reduces spaghetti code in your JavaScript Reduces coupling between groups of elements Packages all dependencies with element for easy reuse Gives you a bunch of cool custom controls
  • 5. What does it solve? Pt.2 Product Batch Operator Submit Batch Product Operator 000-01 Product1 Dan 000-02 Product2 Jack 000-03 Product1 Sam 000-04 Product2 Dan
  • 6. What does it solve? Pt.3 Product Batch Operator Submit Batch Product Date 000-01 Product1 12/8/15 000-02 Product2 12/9/15 000-03 Product1 12/10/15 000-04 Product2 12/11/15 CustomBatchForm setContext() insertRow() CustomBatchTable
  • 7. Adding Polymer to ASP MVC Project Polymer can be added to your Content folder. The file structure should look similar to the this. The only file that will need to be included is the MyElement.html. In this example it would be google- map.html
  • 8. Getting Started WebComponents.JS adds support for web components on older browsers. Include Steps Add Reference to WebComponents.js Add Includes for all components that you want to use Uses the included element. <!-- Polyfill Web Components for older browsers --> <script src="webcomponentsjs/webcomponen ts-lite.min.js"></script> <!-- Import element --> <link rel="import" href="google- map.html"> <!-- Use element --> <google-map latitude="37.790" longitude="-122.390"></google- map>
  • 9. Notable Pieces of an Element Definition Each element definition has a section for defining the endpoints for properties and event handlers. Has includes for all underlying dependencies Has include for default CSS <!-- Add all inherited web components --> <!-- Add CSS as include or inline --> <dom-module id="product-form"> <template> Product:<input value=”{{product}}” /> Batch: <input value=”{{batch}}” /> Operator: <input value=”{{operator}}” /> </template> <script> Polymer({ is: 'product-form', properties: { product: String, batch: String, operator:String, date: String } }); </script> </dom-module>
  • 10. Why Should I Use It Common integration pattern for all elements Support for one-way and two-way data binding Implements Web Components Extensible HTML elements
  • 11. Setting Data Binding Double mustache notation represents two-way binding “{{myObject}}” Double square brackets represents one-way binding “[[myObject]]” Data binding usually uses the “items” attribute. Use the “as” attribute to set the name for a single item in the items list. <template is="dom-bind"> <iron-ajax url="data.json" last-response="{{data}}" auto></iron-ajax> <iron-list items="[[data]]" as="person"> <template> <div> Name: <span>[[person.name]]</span> </div> </template> </iron-list> </template>
  • 12. Customizing CSS Even though all elements will likely come with a default styling. Polymer allows for modifications of an element's CSS. paper-button.fancy { background: green; color: yellow; } paper-button.fancy:hover { background: lime; } paper-button[disabled], paper-button[toggles][active] { background: red; }
  • 13. Demo Project Feel free to look through the demo project Also feel free to use the live demo Here is the Polymer element catalog Vulcanize - Tool for optimizing Web Component includes

Editor's Notes

  1. Only focusing on Web Components for this speech. I may misrepresent Angular and other technologies due to lack of experience with them The approach that polymer takes is to package all of the CSS and JavaScript for an element into one file. Polymer syntax looks a lot more like WPF than Angular does. Blog describing the current state of Web Components implementation. Mozilla also has a framework called X-Tag.
  2. In many cases an input value may map directly to a specific cell. This will cause issues if the implementation of the table changes.
  3. Each dotted box represents a custom element Use the black box approach to element groupings Create well defined points of entry. Also can make use of the observer pattern.
  4. Note that these are .HTML files and not CSS or JavaScript
  5. A public function would be represented as property like setContext: function(contextObj) { }