SlideShare a Scribd company logo
1 of 19
Chief Technology Officer Blueliner NY www.bluelinerny.com www.mahbubblog.com Md. Mahbubur Rahman
? What is Rich Internet Applications, Btw
Rich Internet Applications
Templates Again ?
Why JavaScript Templates ? JavaScript templates are rendered and cached client-side without sending an HTTP request to the server — in other words, they’re lightning fast. Speed benefits aside, JavaScript templates also afford us the opportunity to abstract the administrative UI into a simple JavaScript API. Rich and Faster User Experience Decrease the load on Server [ increase scalability ] Easy to Manage And.. Because the modern web browsers are very powerful
Pushing Some loads to Client’s Computer
Flow of how JavaScript Templates work
HOW DO JAVASCRIPT TEMPLATES LOOK LIKE HTML  JSON <div class=&quot;entry&quot;> <h1> {{title}} </h1> {{#with author}} <h2>By  {{firstName}}   {{lastName}} </h2> {{/with}} </div> { title: &quot;My first post!&quot;, author: { firstName: &quot;Charles&quot;, lastName: &quot;Jolley&quot; } }
HOW DO JAVASCRIPT TEMPLATES LOOK LIKE - 2  <script id=&quot;movieTemplate&quot; type=&quot;text/x-jquery-tmpl&quot;> <tr> <td> {{=Title}} </td> <td> {{#if Languages}} Alternative languages: <em> {{=Languages}} </em>. {{else Subtitles}} Original language only... <br/>Subtitles in <em> {{=Subtitles}} </em>. {{else}} Original version only, without subtitles. {{/if}} </td> </tr> </script>
HOW DO JAVASCRIPT TEMPLATES LOOK LIKE - 3  < script type = &quot;text/javascript&quot; > var  movies  =   [{   Title :   &quot;Meet Joe Black&quot; ,   Languages :   &quot;English and French&quot; ,   Subtitles :   &quot;English&quot; },   {   Title :   &quot;Eyes Wide Shut&quot; ,   Subtitles :   &quot;French and Spanish&quot; },   {   Title :   &quot;The Mighty&quot; },   {   Title :   &quot;City Hunter&quot; ,   Languages :   &quot;Mandarin and Chinese&quot; }]; $ ( &quot;#movieList&quot; ). html ( $ ( &quot;#movieTemplate&quot; ). render ( movies )); </ script >
HOW DO JAVASCRIPT TEMPLATES LOOK LIKE – 4
Ways of Using Visitor’s PCs. Adobe Flash / Flex Google Gears Microsoft Silverlight HTML5
Let some computation be done by Client
Right AJAX Data Transport XML JSON HTML
Same Template  for Server side and Client Side Ex. Mustache, Handlebar JS Available in Ruby, JavaScript, Python, Erlang,  PHP, Perl, Objective-C, Java, .NET, Android, C++,  Go, Lua, ooc, ActionScript, ColdFusion,  Scala, Clojure, Fantom, CoffeeScript, D, and for  node.js .
Same Template  for Server side and Client Side (Contd.)
JS Templating Good when Loading all data from the server especially in rich list displays Adding or updating new items in lists Anywhere you need to add new complex content to the page Anything that requires client side HTML rendering
JavaScript Templating best suited for Stock Related apps Web Admin Panel Live Score Web Desktops Any AJAX Intensive app
Some JavaScript Templating Engines jQuery.View  ( https://github.com/BorisMoore/jsviews) jQuery View Renderer  ( https://github.com/BorisMoore/jsrender) Mustache  ( http://mustache.github.com/) EJS  ( http://embeddedjs.com/) PURE  (http:// beebole.com/pure/) HandlebarJS  ( http://www.handlebarsjs.com/) UnderscoreJS  ( http://documentcloud.github.com/underscore/)

More Related Content

What's hot

Usability in the GeoWeb
Usability in the GeoWebUsability in the GeoWeb
Usability in the GeoWeb
Dave Bouwman
 
Polymer
Polymer Polymer
Polymer
jskvara
 

What's hot (20)

JavaScript UI Architecture: Be all that you can be
JavaScript UI Architecture: Be all that you can beJavaScript UI Architecture: Be all that you can be
JavaScript UI Architecture: Be all that you can be
 
Google Polymer Framework
Google Polymer FrameworkGoogle Polymer Framework
Google Polymer Framework
 
Usability in the GeoWeb
Usability in the GeoWebUsability in the GeoWeb
Usability in the GeoWeb
 
Polymer and web component
Polymer and web componentPolymer and web component
Polymer and web component
 
How to build a web application with Polymer
How to build a web application with PolymerHow to build a web application with Polymer
How to build a web application with Polymer
 
Introduction to Web Components
Introduction to Web ComponentsIntroduction to Web Components
Introduction to Web Components
 
Polymer
Polymer Polymer
Polymer
 
Goodbye JavaScript Hello Blazor
Goodbye JavaScript Hello BlazorGoodbye JavaScript Hello Blazor
Goodbye JavaScript Hello Blazor
 
Building modern share point apps (angularjs, npm, bower, grunt, VS2015)
Building modern share point apps (angularjs, npm, bower, grunt, VS2015)Building modern share point apps (angularjs, npm, bower, grunt, VS2015)
Building modern share point apps (angularjs, npm, bower, grunt, VS2015)
 
Web II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side developmentWeb II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side development
 
Web Components
Web ComponentsWeb Components
Web Components
 
Google Polymer Introduction
Google Polymer IntroductionGoogle Polymer Introduction
Google Polymer Introduction
 
Polymer, A Web Component Polyfill Library
Polymer, A Web Component Polyfill LibraryPolymer, A Web Component Polyfill Library
Polymer, A Web Component Polyfill Library
 
Html5 Overview
Html5 OverviewHtml5 Overview
Html5 Overview
 
Web Components: Web back to future.
Web Components: Web back to future.Web Components: Web back to future.
Web Components: Web back to future.
 
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
 
No Feature Solutions with SharePoint
No Feature Solutions with SharePointNo Feature Solutions with SharePoint
No Feature Solutions with SharePoint
 
Boost your testing: End-to-End with Docker and Geb
 Boost your testing: End-to-End with Docker and Geb Boost your testing: End-to-End with Docker and Geb
Boost your testing: End-to-End with Docker and Geb
 
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
 
GWT
GWTGWT
GWT
 

Similar to Taking Advantage of Client Side / JavsScript Templates in Rich Internet Applications

1 Introduction to Drupal Web Development
1 Introduction to Drupal Web Development1 Introduction to Drupal Web Development
1 Introduction to Drupal Web Development
Wingston
 
Linux Apache Php Mysql Lamp1273
Linux Apache Php Mysql Lamp1273Linux Apache Php Mysql Lamp1273
Linux Apache Php Mysql Lamp1273
hussulinux
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Chris Love
 
Introduction to javaScript
Introduction to javaScriptIntroduction to javaScript
Introduction to javaScript
Neil Ghosh
 
A World Beyond Ajax Accessing Googles Ap Is From Flash And Non Java Script En...
A World Beyond Ajax Accessing Googles Ap Is From Flash And Non Java Script En...A World Beyond Ajax Accessing Googles Ap Is From Flash And Non Java Script En...
A World Beyond Ajax Accessing Googles Ap Is From Flash And Non Java Script En...
GoogleTecTalks
 

Similar to Taking Advantage of Client Side / JavsScript Templates in Rich Internet Applications (20)

Javascript
JavascriptJavascript
Javascript
 
1 Introduction to Drupal Web Development
1 Introduction to Drupal Web Development1 Introduction to Drupal Web Development
1 Introduction to Drupal Web Development
 
Decoding the Web
Decoding the WebDecoding the Web
Decoding the Web
 
Javascript
JavascriptJavascript
Javascript
 
Linux Apache Php Mysql Lamp1273
Linux Apache Php Mysql Lamp1273Linux Apache Php Mysql Lamp1273
Linux Apache Php Mysql Lamp1273
 
Internet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAMInternet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAM
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
 
Introduction to javaScript
Introduction to javaScriptIntroduction to javaScript
Introduction to javaScript
 
php
phpphp
php
 
Unit 4 Java script.pptx
Unit 4 Java script.pptxUnit 4 Java script.pptx
Unit 4 Java script.pptx
 
JS BASICS JAVA SCRIPT SCRIPTING
JS BASICS JAVA SCRIPT SCRIPTINGJS BASICS JAVA SCRIPT SCRIPTING
JS BASICS JAVA SCRIPT SCRIPTING
 
Making Of PHP Based Web Application
Making Of PHP Based Web ApplicationMaking Of PHP Based Web Application
Making Of PHP Based Web Application
 
JAVA SCRIPT
JAVA SCRIPTJAVA SCRIPT
JAVA SCRIPT
 
JavaScript New Tutorial Class XI and XII.pptx
JavaScript New Tutorial Class XI and XII.pptxJavaScript New Tutorial Class XI and XII.pptx
JavaScript New Tutorial Class XI and XII.pptx
 
PPT
PPTPPT
PPT
 
Javazone 2010-lift-framework-public
Javazone 2010-lift-framework-publicJavazone 2010-lift-framework-public
Javazone 2010-lift-framework-public
 
A World Beyond Ajax Accessing Googles Ap Is From Flash And Non Java Script En...
A World Beyond Ajax Accessing Googles Ap Is From Flash And Non Java Script En...A World Beyond Ajax Accessing Googles Ap Is From Flash And Non Java Script En...
A World Beyond Ajax Accessing Googles Ap Is From Flash And Non Java Script En...
 
How NOT to get lost in the current JavaScript landscape
How NOT to get lost in the current JavaScript landscapeHow NOT to get lost in the current JavaScript landscape
How NOT to get lost in the current JavaScript landscape
 
Intro to mobile web application development
Intro to mobile web application developmentIntro to mobile web application development
Intro to mobile web application development
 
Introduction to Java Scripting
Introduction to Java ScriptingIntroduction to Java Scripting
Introduction to Java Scripting
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

Taking Advantage of Client Side / JavsScript Templates in Rich Internet Applications

  • 1. Chief Technology Officer Blueliner NY www.bluelinerny.com www.mahbubblog.com Md. Mahbubur Rahman
  • 2. ? What is Rich Internet Applications, Btw
  • 5. Why JavaScript Templates ? JavaScript templates are rendered and cached client-side without sending an HTTP request to the server — in other words, they’re lightning fast. Speed benefits aside, JavaScript templates also afford us the opportunity to abstract the administrative UI into a simple JavaScript API. Rich and Faster User Experience Decrease the load on Server [ increase scalability ] Easy to Manage And.. Because the modern web browsers are very powerful
  • 6. Pushing Some loads to Client’s Computer
  • 7. Flow of how JavaScript Templates work
  • 8. HOW DO JAVASCRIPT TEMPLATES LOOK LIKE HTML JSON <div class=&quot;entry&quot;> <h1> {{title}} </h1> {{#with author}} <h2>By {{firstName}} {{lastName}} </h2> {{/with}} </div> { title: &quot;My first post!&quot;, author: { firstName: &quot;Charles&quot;, lastName: &quot;Jolley&quot; } }
  • 9. HOW DO JAVASCRIPT TEMPLATES LOOK LIKE - 2 <script id=&quot;movieTemplate&quot; type=&quot;text/x-jquery-tmpl&quot;> <tr> <td> {{=Title}} </td> <td> {{#if Languages}} Alternative languages: <em> {{=Languages}} </em>. {{else Subtitles}} Original language only... <br/>Subtitles in <em> {{=Subtitles}} </em>. {{else}} Original version only, without subtitles. {{/if}} </td> </tr> </script>
  • 10. HOW DO JAVASCRIPT TEMPLATES LOOK LIKE - 3 < script type = &quot;text/javascript&quot; > var movies = [{ Title : &quot;Meet Joe Black&quot; , Languages : &quot;English and French&quot; , Subtitles : &quot;English&quot; }, { Title : &quot;Eyes Wide Shut&quot; , Subtitles : &quot;French and Spanish&quot; }, { Title : &quot;The Mighty&quot; }, { Title : &quot;City Hunter&quot; , Languages : &quot;Mandarin and Chinese&quot; }]; $ ( &quot;#movieList&quot; ). html ( $ ( &quot;#movieTemplate&quot; ). render ( movies )); </ script >
  • 11. HOW DO JAVASCRIPT TEMPLATES LOOK LIKE – 4
  • 12. Ways of Using Visitor’s PCs. Adobe Flash / Flex Google Gears Microsoft Silverlight HTML5
  • 13. Let some computation be done by Client
  • 14. Right AJAX Data Transport XML JSON HTML
  • 15. Same Template for Server side and Client Side Ex. Mustache, Handlebar JS Available in Ruby, JavaScript, Python, Erlang, PHP, Perl, Objective-C, Java, .NET, Android, C++, Go, Lua, ooc, ActionScript, ColdFusion, Scala, Clojure, Fantom, CoffeeScript, D, and for node.js .
  • 16. Same Template for Server side and Client Side (Contd.)
  • 17. JS Templating Good when Loading all data from the server especially in rich list displays Adding or updating new items in lists Anywhere you need to add new complex content to the page Anything that requires client side HTML rendering
  • 18. JavaScript Templating best suited for Stock Related apps Web Admin Panel Live Score Web Desktops Any AJAX Intensive app
  • 19. Some JavaScript Templating Engines jQuery.View ( https://github.com/BorisMoore/jsviews) jQuery View Renderer ( https://github.com/BorisMoore/jsrender) Mustache ( http://mustache.github.com/) EJS ( http://embeddedjs.com/) PURE (http:// beebole.com/pure/) HandlebarJS ( http://www.handlebarsjs.com/) UnderscoreJS ( http://documentcloud.github.com/underscore/)