SlideShare a Scribd company logo
1 of 48
HTML5
        Web

              @
html5-developers-jp Google


                        Web


Google       API Expert HTML5

2007     Gears

          Gears
Web

        Web      API



  Web Database
  Web Storage
  Web Workers
HTML5      Web
:HTML5


html5-developers-jp 2009/7/10



   7           687

   8           1,051

   9           1,304

Google Trend


       HTML5
Web


                               Web


2007    Google Gears

HTML5       API        Gears




                               Web Workers
                                   Gears
Web


      Gears                                           Web


Google Docs, Gmail, Google Reader, Remenber the milk...




                                                     PC
Web




      (   )
Web   API




Web Workers

Web Storage

Web Database
Web
CACHE MANIFEST

  # version: 200909241054

  hello.html
  hello.js


                   text/cache-manifest        MIME

Web         html         manifest
      URL                 : <html manifest=”hello.manifest”>
-




                 UTF-8

     1


CACHE MANIFEST

# version: 200909241054

hello.html
hello.js
(1)
(2)


                            JavaScript



5                                        updateready




    Gears   ResourceStore
Web Database




   SQL

          WEB




                DB
Web Database



 DB

 1                             DB

 DB

     Browser
               exampleA.com         exampleB.com


                 DB1                  DB1
                  Table1 DB1           Table1 DB1
                    Table1               Table1
                      Table1               Table1
Web Database


            API           API

            API


        var db = openDatabase(...)
        db.transaction(function(tx) {
          tx.executeSql(“...”, [...],
            function onSuccess(tx, results) {
              ...
            },
            function onError(tx, error) { ...}
        });
           API


        var db = openDatabaseSync(...)
        db.transaction(function(tx) {
         var results = tx.executeSql(“...”);
         ...
Web Database


                    (

   Safari DB   DB
Web Storage


                        Web Database




       LocalStorage

       SessionStorage
Web Storage


   Web Database                   Web Storage

   localStorage sessionStorage



    // localStorage/sessionStorage
    //
    localStorage.setItem(“key”, “value”);
    var val = localStorage.getItem(“key”);
    //
    localStorage.key =“value”;
    var val = localStorage.key;
Web Workers




       JavaScript        UI



                    JavaScript
Web Workers




      → window        document                            JS



                                                    API

                           UI Thread
                                  create
                     manipulate            Worker
          DOM
          (window,                postMessage
         document)
                                  postMessage
Web Workers




      → window        document                            JS



                                                    API

                           UI Thread
                                  create
                     manipulate            Worker
          DOM
          (window,                postMessage
         document)
                                  postMessage
Web Workers




      → window        document                            JS



                                                    API

                           UI Thread
                                  create
                     manipulate            Worker
          DOM
          (window,                postMessage
         document)
                        ×         postMessage
Web Workers


                : new Worker(scriptUrl)

                                : worker.postMessage(message);

                                : worker.onmessage(event);

                postMessage   onmessage


               ui.js                              worker.js
worker.onmessage =                    onmessage = function(msg) {
function(msg) {                         ...
  ...                                   postMessage(...)
}                                     }
function a {
  worker.postMessage(...)
}
Web Workers


              (
Web Workers


   Web Workers

       Worker




                 switch-case
Web Workers


   Web Workers

       Worker




                 switch-case




                        (^^)
Web Workers


   Web Workers

       Worker

      → fakeworker.js   eval() setTimeout()      Web Workers



                                              switch-case




                                                     (^^)
Web Workers


   Web Workers

       Worker

      → fakeworker.js    eval() setTimeout()      Web Workers



                                               switch-case


      → AlexService     Web Workers


                                                      (^^)
HTML5    Web




        HTML5(Open Web Platform)
HTML5   Web
Web




      DB
HTML5   Web




              DB



                   Download/Upload




              DB
HTML5       Web




    Open Web Architecture(    )

                        DB



                             Download/Upload




                        DB
Open Web Architecture


 •
     •
 •
     •
 •

     •
Open Web Architecture


 •
     •
 •
     •
 •

     •
Open Web Architecture


 •
     •
 •
 •
     •

     •
Open Web Architecture

  •
  •

      •
      •

      •
          •
          •
      •
      •
Open Web Architecture

  •
  •

      •
      •

      •
          •
          •
      •
      •
Alexing Framework!!

•

•
•


    Cloud
                         DB




    Client             AlexingDownload/Upload




                         DB
Alexing Framework

•
    •
•
•
                                    class
        Cloud
                                   Greeting
                      Java Class

                 DB




        Client



                            DB
Alexing Framework

•
    •
•
•
                                               class
        Cloud
                                              Greeting
                                Java Class

                  DB
                                Middleware

                  class                      Alexing
        Client   Greeting
                               Sync Engine

                            JavaScript
                              Class    DB
Alexing Framework

•
    •
•
•
                                                              class
        Cloud
                                                             Greeting
                                               Java Class

                                DB
                                               Middleware

                                class                       Alexing
        Client                 Greeting
                                              Sync Engine
                                 edit
                 Application               JavaScript
                                             Class    DB
                                retrieve
Alexing Framework   (1)

•
    •

        •
        •
        •
    •
    •
Alexing Framework   (2)

•
•




•
Alexing Framework                (3)

•

    •   class.find()

    •   instance.save()

    •   instance.remove()

•
    •   database.synchronize()
Alexing Framework

•
    •
    •

    •

•
    •
    •
•
HTML5 and Open Web Architecture

More Related Content

What's hot

IBM Connect 2014 - AD205: Creating State-of-the-Art Web Applications with Dom...
IBM Connect 2014 - AD205: Creating State-of-the-Art Web Applications with Dom...IBM Connect 2014 - AD205: Creating State-of-the-Art Web Applications with Dom...
IBM Connect 2014 - AD205: Creating State-of-the-Art Web Applications with Dom...Dave Delay
 
Silverlight 2 For Developers
Silverlight 2 For DevelopersSilverlight 2 For Developers
Silverlight 2 For DevelopersMithun T. Dhar
 
RESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff Norris
RESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff NorrisRESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff Norris
RESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff Norrismfrancis
 
Drupal 6 JavaScript and jQuery
Drupal 6 JavaScript and jQueryDrupal 6 JavaScript and jQuery
Drupal 6 JavaScript and jQueryMatt Butcher
 
Ruby on Rails: Building Web Applications Is Fun Again!
Ruby on Rails: Building Web Applications Is Fun Again!Ruby on Rails: Building Web Applications Is Fun Again!
Ruby on Rails: Building Web Applications Is Fun Again!judofyr
 
HTML5 features & JavaScript APIs
HTML5 features & JavaScript APIsHTML5 features & JavaScript APIs
HTML5 features & JavaScript APIsFisnik Doko
 
Windows Azure for Developers - Service Management
Windows Azure for Developers - Service ManagementWindows Azure for Developers - Service Management
Windows Azure for Developers - Service ManagementMichael Collier
 
Windows Azure for Developers - Building Block Services
Windows Azure for Developers - Building Block ServicesWindows Azure for Developers - Building Block Services
Windows Azure for Developers - Building Block ServicesMichael Collier
 
HTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile appsHTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile appsIvano Malavolta
 
Unobtrusive JavaScript
Unobtrusive JavaScriptUnobtrusive JavaScript
Unobtrusive JavaScriptVitaly Baum
 
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 ComponentsAndrew Rota
 
Single Page Applications on JavaScript and ASP.NET MVC4
Single Page Applications on JavaScript and ASP.NET MVC4Single Page Applications on JavaScript and ASP.NET MVC4
Single Page Applications on JavaScript and ASP.NET MVC4Yuriy Shapovalov
 
Ajax:From Desktop Applications towards Ajax Web Applications
Ajax:From Desktop Applications towards Ajax Web ApplicationsAjax:From Desktop Applications towards Ajax Web Applications
Ajax:From Desktop Applications towards Ajax Web ApplicationsSiva Kumar
 
Google app-engine-cloudcamplagos2011
Google app-engine-cloudcamplagos2011Google app-engine-cloudcamplagos2011
Google app-engine-cloudcamplagos2011Opevel
 
Automating Your Azure Environment
Automating Your Azure EnvironmentAutomating Your Azure Environment
Automating Your Azure EnvironmentMichael Collier
 
Should you use HTML5 to build your product? The pros & cons of using current ...
Should you use HTML5 to build your product? The pros & cons of using current ...Should you use HTML5 to build your product? The pros & cons of using current ...
Should you use HTML5 to build your product? The pros & cons of using current ...boxuno
 

What's hot (20)

IBM Connect 2014 - AD205: Creating State-of-the-Art Web Applications with Dom...
IBM Connect 2014 - AD205: Creating State-of-the-Art Web Applications with Dom...IBM Connect 2014 - AD205: Creating State-of-the-Art Web Applications with Dom...
IBM Connect 2014 - AD205: Creating State-of-the-Art Web Applications with Dom...
 
Silverlight 2 For Developers
Silverlight 2 For DevelopersSilverlight 2 For Developers
Silverlight 2 For Developers
 
RESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff Norris
RESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff NorrisRESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff Norris
RESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff Norris
 
Drupal 6 JavaScript and jQuery
Drupal 6 JavaScript and jQueryDrupal 6 JavaScript and jQuery
Drupal 6 JavaScript and jQuery
 
Ruby on Rails: Building Web Applications Is Fun Again!
Ruby on Rails: Building Web Applications Is Fun Again!Ruby on Rails: Building Web Applications Is Fun Again!
Ruby on Rails: Building Web Applications Is Fun Again!
 
HTML5 features & JavaScript APIs
HTML5 features & JavaScript APIsHTML5 features & JavaScript APIs
HTML5 features & JavaScript APIs
 
Windows Azure for Developers - Service Management
Windows Azure for Developers - Service ManagementWindows Azure for Developers - Service Management
Windows Azure for Developers - Service Management
 
DirectToWeb 2.0
DirectToWeb 2.0DirectToWeb 2.0
DirectToWeb 2.0
 
Windows Azure for Developers - Building Block Services
Windows Azure for Developers - Building Block ServicesWindows Azure for Developers - Building Block Services
Windows Azure for Developers - Building Block Services
 
Asp.net
Asp.netAsp.net
Asp.net
 
HTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile appsHTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile apps
 
Unobtrusive JavaScript
Unobtrusive JavaScriptUnobtrusive JavaScript
Unobtrusive JavaScript
 
Backbone js
Backbone jsBackbone js
Backbone js
 
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
 
Single Page Applications on JavaScript and ASP.NET MVC4
Single Page Applications on JavaScript and ASP.NET MVC4Single Page Applications on JavaScript and ASP.NET MVC4
Single Page Applications on JavaScript and ASP.NET MVC4
 
Ajax:From Desktop Applications towards Ajax Web Applications
Ajax:From Desktop Applications towards Ajax Web ApplicationsAjax:From Desktop Applications towards Ajax Web Applications
Ajax:From Desktop Applications towards Ajax Web Applications
 
Google app-engine-cloudcamplagos2011
Google app-engine-cloudcamplagos2011Google app-engine-cloudcamplagos2011
Google app-engine-cloudcamplagos2011
 
Nick harris-sic-2011
Nick harris-sic-2011Nick harris-sic-2011
Nick harris-sic-2011
 
Automating Your Azure Environment
Automating Your Azure EnvironmentAutomating Your Azure Environment
Automating Your Azure Environment
 
Should you use HTML5 to build your product? The pros & cons of using current ...
Should you use HTML5 to build your product? The pros & cons of using current ...Should you use HTML5 to build your product? The pros & cons of using current ...
Should you use HTML5 to build your product? The pros & cons of using current ...
 

Viewers also liked

Latag study camp lipa city detailed map for driving
Latag study camp lipa city detailed map for drivingLatag study camp lipa city detailed map for driving
Latag study camp lipa city detailed map for drivingalexander N. N. Gilles
 
HTML5 - Create The Web London
HTML5 - Create The Web LondonHTML5 - Create The Web London
HTML5 - Create The Web LondonSally Lait
 
16 Enjoyable Business Lessons from Sex
16 Enjoyable Business Lessons from Sex16 Enjoyable Business Lessons from Sex
16 Enjoyable Business Lessons from SexAndrew Morrison
 
My Life #OutsideWork (Intuit Employees)
My Life #OutsideWork (Intuit Employees)My Life #OutsideWork (Intuit Employees)
My Life #OutsideWork (Intuit Employees)Intuit Inc.
 
Piping components, materials, codes and standards part 1- pipe
Piping components, materials, codes and standards   part 1- pipePiping components, materials, codes and standards   part 1- pipe
Piping components, materials, codes and standards part 1- pipeAlireza Niakani
 
11 Things Healthy People Do Every Morning
11 Things Healthy People Do Every Morning11 Things Healthy People Do Every Morning
11 Things Healthy People Do Every MorningEason Chan
 
24 Productivity Habits of Successful People - by @prdotco
24 Productivity Habits of Successful People - by @prdotco24 Productivity Habits of Successful People - by @prdotco
24 Productivity Habits of Successful People - by @prdotcopr.co
 

Viewers also liked (9)

Latag study camp lipa city detailed map for driving
Latag study camp lipa city detailed map for drivingLatag study camp lipa city detailed map for driving
Latag study camp lipa city detailed map for driving
 
HTML5 - Create The Web London
HTML5 - Create The Web LondonHTML5 - Create The Web London
HTML5 - Create The Web London
 
sail a boat
sail a boatsail a boat
sail a boat
 
16 Enjoyable Business Lessons from Sex
16 Enjoyable Business Lessons from Sex16 Enjoyable Business Lessons from Sex
16 Enjoyable Business Lessons from Sex
 
My Life #OutsideWork (Intuit Employees)
My Life #OutsideWork (Intuit Employees)My Life #OutsideWork (Intuit Employees)
My Life #OutsideWork (Intuit Employees)
 
Basic piping
Basic pipingBasic piping
Basic piping
 
Piping components, materials, codes and standards part 1- pipe
Piping components, materials, codes and standards   part 1- pipePiping components, materials, codes and standards   part 1- pipe
Piping components, materials, codes and standards part 1- pipe
 
11 Things Healthy People Do Every Morning
11 Things Healthy People Do Every Morning11 Things Healthy People Do Every Morning
11 Things Healthy People Do Every Morning
 
24 Productivity Habits of Successful People - by @prdotco
24 Productivity Habits of Successful People - by @prdotco24 Productivity Habits of Successful People - by @prdotco
24 Productivity Habits of Successful People - by @prdotco
 

Similar to HTML5 and Open Web Architecture

The Java Content Repository
The Java Content RepositoryThe Java Content Repository
The Java Content Repositorynobby
 
Building assets on the fly with Node.js
Building assets on the fly with Node.jsBuilding assets on the fly with Node.js
Building assets on the fly with Node.jsAcquisio
 
Enterprise Java Web Application Frameworks Sample Stack Implementation
Enterprise Java Web Application Frameworks   Sample Stack ImplementationEnterprise Java Web Application Frameworks   Sample Stack Implementation
Enterprise Java Web Application Frameworks Sample Stack ImplementationMert Çalışkan
 
Java EE 7 (Hamed Hatami)
Java EE 7 (Hamed Hatami)Java EE 7 (Hamed Hatami)
Java EE 7 (Hamed Hatami)Hamed Hatami
 
The web as it should be
The web as it should beThe web as it should be
The web as it should bethebeebs
 
Fighting Against Chaotically Separated Values with Embulk
Fighting Against Chaotically Separated Values with EmbulkFighting Against Chaotically Separated Values with Embulk
Fighting Against Chaotically Separated Values with EmbulkSadayuki Furuhashi
 
Windows Azure Overview
Windows Azure OverviewWindows Azure Overview
Windows Azure OverviewEric Nelson
 
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...Joonas Lehtinen
 
Advance Java Topics (J2EE)
Advance Java Topics (J2EE)Advance Java Topics (J2EE)
Advance Java Topics (J2EE)slire
 
Building dynamic applications with the share point client object model
Building dynamic applications with the share point client object modelBuilding dynamic applications with the share point client object model
Building dynamic applications with the share point client object modelEric Shupps
 
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...jaxconf
 
User Interface Patterns and Nuxeo
User Interface Patterns and NuxeoUser Interface Patterns and Nuxeo
User Interface Patterns and Nuxeoanicewick
 
Javascript frameworks: Backbone.js
Javascript frameworks: Backbone.jsJavascript frameworks: Backbone.js
Javascript frameworks: Backbone.jsSoós Gábor
 
Moving to the Client - JavaFX and HTML5
Moving to the Client - JavaFX and HTML5Moving to the Client - JavaFX and HTML5
Moving to the Client - JavaFX and HTML5Stephen Chin
 
SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...Liam Cleary [MVP]
 
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)Daniel Bryant
 
Devfest09 Cschalk Gwt
Devfest09 Cschalk GwtDevfest09 Cschalk Gwt
Devfest09 Cschalk GwtChris Schalk
 
A Walking Tour of (almost) all of Springdom
A Walking Tour of (almost) all of Springdom A Walking Tour of (almost) all of Springdom
A Walking Tour of (almost) all of Springdom Joshua Long
 
Amazon EC2 Container Service: Manage Docker-Enabled Apps in EC2
Amazon EC2 Container Service: Manage Docker-Enabled Apps in EC2Amazon EC2 Container Service: Manage Docker-Enabled Apps in EC2
Amazon EC2 Container Service: Manage Docker-Enabled Apps in EC2Amazon Web Services
 
Cloud State of the Union for Java Developers
Cloud State of the Union for Java DevelopersCloud State of the Union for Java Developers
Cloud State of the Union for Java DevelopersBurr Sutter
 

Similar to HTML5 and Open Web Architecture (20)

The Java Content Repository
The Java Content RepositoryThe Java Content Repository
The Java Content Repository
 
Building assets on the fly with Node.js
Building assets on the fly with Node.jsBuilding assets on the fly with Node.js
Building assets on the fly with Node.js
 
Enterprise Java Web Application Frameworks Sample Stack Implementation
Enterprise Java Web Application Frameworks   Sample Stack ImplementationEnterprise Java Web Application Frameworks   Sample Stack Implementation
Enterprise Java Web Application Frameworks Sample Stack Implementation
 
Java EE 7 (Hamed Hatami)
Java EE 7 (Hamed Hatami)Java EE 7 (Hamed Hatami)
Java EE 7 (Hamed Hatami)
 
The web as it should be
The web as it should beThe web as it should be
The web as it should be
 
Fighting Against Chaotically Separated Values with Embulk
Fighting Against Chaotically Separated Values with EmbulkFighting Against Chaotically Separated Values with Embulk
Fighting Against Chaotically Separated Values with Embulk
 
Windows Azure Overview
Windows Azure OverviewWindows Azure Overview
Windows Azure Overview
 
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
 
Advance Java Topics (J2EE)
Advance Java Topics (J2EE)Advance Java Topics (J2EE)
Advance Java Topics (J2EE)
 
Building dynamic applications with the share point client object model
Building dynamic applications with the share point client object modelBuilding dynamic applications with the share point client object model
Building dynamic applications with the share point client object model
 
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
 
User Interface Patterns and Nuxeo
User Interface Patterns and NuxeoUser Interface Patterns and Nuxeo
User Interface Patterns and Nuxeo
 
Javascript frameworks: Backbone.js
Javascript frameworks: Backbone.jsJavascript frameworks: Backbone.js
Javascript frameworks: Backbone.js
 
Moving to the Client - JavaFX and HTML5
Moving to the Client - JavaFX and HTML5Moving to the Client - JavaFX and HTML5
Moving to the Client - JavaFX and HTML5
 
SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...
 
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)
MSc Enterprise Systems Development Guest Lecture at UniS (2/12/09)
 
Devfest09 Cschalk Gwt
Devfest09 Cschalk GwtDevfest09 Cschalk Gwt
Devfest09 Cschalk Gwt
 
A Walking Tour of (almost) all of Springdom
A Walking Tour of (almost) all of Springdom A Walking Tour of (almost) all of Springdom
A Walking Tour of (almost) all of Springdom
 
Amazon EC2 Container Service: Manage Docker-Enabled Apps in EC2
Amazon EC2 Container Service: Manage Docker-Enabled Apps in EC2Amazon EC2 Container Service: Manage Docker-Enabled Apps in EC2
Amazon EC2 Container Service: Manage Docker-Enabled Apps in EC2
 
Cloud State of the Union for Java Developers
Cloud State of the Union for Java DevelopersCloud State of the Union for Java Developers
Cloud State of the Union for Java Developers
 

More from Shumpei Shiraishi

コンセプトのつくりかた - アイデアをかたちにする技術
コンセプトのつくりかた - アイデアをかたちにする技術コンセプトのつくりかた - アイデアをかたちにする技術
コンセプトのつくりかた - アイデアをかたちにする技術Shumpei Shiraishi
 
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶjQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶShumpei Shiraishi
 
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門Shumpei Shiraishi
 
JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門Shumpei Shiraishi
 
「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んでShumpei Shiraishi
 
「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んでShumpei Shiraishi
 
WebRTCがビデオ会議市場に与えるインパクトを探る
WebRTCがビデオ会議市場に与えるインパクトを探るWebRTCがビデオ会議市場に与えるインパクトを探る
WebRTCがビデオ会議市場に与えるインパクトを探るShumpei Shiraishi
 
変身×フランツ・カフカ
変身×フランツ・カフカ変身×フランツ・カフカ
変身×フランツ・カフカShumpei Shiraishi
 
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んでイラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んでShumpei Shiraishi
 
「1秒でわかる!アパレル業界ハンドブック」を読んで
「1秒でわかる!アパレル業界ハンドブック」を読んで「1秒でわかる!アパレル業界ハンドブック」を読んで
「1秒でわかる!アパレル業界ハンドブック」を読んでShumpei Shiraishi
 
HTML5時代のフロントエンド開発入門
HTML5時代のフロントエンド開発入門HTML5時代のフロントエンド開発入門
HTML5時代のフロントエンド開発入門Shumpei Shiraishi
 
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
6,000人のWeb技術者コミュニティを5年間やってみて学んだことShumpei Shiraishi
 
はじめにことばありき
はじめにことばありきはじめにことばありき
はじめにことばありきShumpei Shiraishi
 
HTML5がもたらすアプリ開発へのインパクト
HTML5がもたらすアプリ開発へのインパクトHTML5がもたらすアプリ開発へのインパクト
HTML5がもたらすアプリ開発へのインパクトShumpei Shiraishi
 
この人と結婚していいの?を読んで
この人と結婚していいの?を読んでこの人と結婚していいの?を読んで
この人と結婚していいの?を読んでShumpei Shiraishi
 

More from Shumpei Shiraishi (20)

俺的GEB概論(前半)
俺的GEB概論(前半)俺的GEB概論(前半)
俺的GEB概論(前半)
 
コンセプトのつくりかた - アイデアをかたちにする技術
コンセプトのつくりかた - アイデアをかたちにする技術コンセプトのつくりかた - アイデアをかたちにする技術
コンセプトのつくりかた - アイデアをかたちにする技術
 
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶjQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
 
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
 
JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門
 
「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで
 
「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで
 
Angular2実践入門
Angular2実践入門Angular2実践入門
Angular2実践入門
 
WebRTCがビデオ会議市場に与えるインパクトを探る
WebRTCがビデオ会議市場に与えるインパクトを探るWebRTCがビデオ会議市場に与えるインパクトを探る
WebRTCがビデオ会議市場に与えるインパクトを探る
 
変身×フランツ・カフカ
変身×フランツ・カフカ変身×フランツ・カフカ
変身×フランツ・カフカ
 
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んでイラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
 
「1秒でわかる!アパレル業界ハンドブック」を読んで
「1秒でわかる!アパレル業界ハンドブック」を読んで「1秒でわかる!アパレル業界ハンドブック」を読んで
「1秒でわかる!アパレル業界ハンドブック」を読んで
 
漫☆画太郎論
漫☆画太郎論漫☆画太郎論
漫☆画太郎論
 
HTML5時代のフロントエンド開発入門
HTML5時代のフロントエンド開発入門HTML5時代のフロントエンド開発入門
HTML5時代のフロントエンド開発入門
 
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
 
はじめにことばありき
はじめにことばありきはじめにことばありき
はじめにことばありき
 
秒速一億円
秒速一億円秒速一億円
秒速一億円
 
HTML5がもたらすアプリ開発へのインパクト
HTML5がもたらすアプリ開発へのインパクトHTML5がもたらすアプリ開発へのインパクト
HTML5がもたらすアプリ開発へのインパクト
 
この人と結婚していいの?を読んで
この人と結婚していいの?を読んでこの人と結婚していいの?を読んで
この人と結婚していいの?を読んで
 
20130921レジュメ2
20130921レジュメ220130921レジュメ2
20130921レジュメ2
 

HTML5 and Open Web Architecture

  • 1. HTML5 Web @
  • 2. html5-developers-jp Google Web Google API Expert HTML5 2007 Gears Gears
  • 3. Web Web API Web Database Web Storage Web Workers HTML5 Web
  • 4. :HTML5 html5-developers-jp 2009/7/10 7 687 8 1,051 9 1,304 Google Trend HTML5
  • 5. Web Web 2007 Google Gears HTML5 API Gears Web Workers Gears
  • 6. Web Gears Web Google Docs, Gmail, Google Reader, Remenber the milk... PC
  • 7. Web ( )
  • 8. Web API Web Workers Web Storage Web Database
  • 9. Web
  • 10. CACHE MANIFEST # version: 200909241054 hello.html hello.js text/cache-manifest MIME Web html manifest URL : <html manifest=”hello.manifest”>
  • 11. - UTF-8 1 CACHE MANIFEST # version: 200909241054 hello.html hello.js
  • 12. (1)
  • 13. (2) JavaScript 5 updateready Gears ResourceStore
  • 14. Web Database SQL WEB DB
  • 15. Web Database DB 1 DB DB Browser exampleA.com exampleB.com DB1 DB1 Table1 DB1 Table1 DB1 Table1 Table1 Table1 Table1
  • 16. Web Database API API API var db = openDatabase(...) db.transaction(function(tx) { tx.executeSql(“...”, [...], function onSuccess(tx, results) { ... }, function onError(tx, error) { ...} }); API var db = openDatabaseSync(...) db.transaction(function(tx) { var results = tx.executeSql(“...”); ...
  • 17. Web Database ( Safari DB DB
  • 18. Web Storage Web Database LocalStorage SessionStorage
  • 19. Web Storage Web Database Web Storage localStorage sessionStorage // localStorage/sessionStorage // localStorage.setItem(“key”, “value”); var val = localStorage.getItem(“key”); // localStorage.key =“value”; var val = localStorage.key;
  • 20. Web Workers JavaScript UI JavaScript
  • 21. Web Workers → window document JS API UI Thread create manipulate Worker DOM (window, postMessage document) postMessage
  • 22. Web Workers → window document JS API UI Thread create manipulate Worker DOM (window, postMessage document) postMessage
  • 23. Web Workers → window document JS API UI Thread create manipulate Worker DOM (window, postMessage document) × postMessage
  • 24. Web Workers : new Worker(scriptUrl) : worker.postMessage(message); : worker.onmessage(event); postMessage onmessage ui.js worker.js worker.onmessage = onmessage = function(msg) { function(msg) { ... ... postMessage(...) } } function a { worker.postMessage(...) }
  • 26. Web Workers Web Workers Worker switch-case
  • 27. Web Workers Web Workers Worker switch-case (^^)
  • 28. Web Workers Web Workers Worker → fakeworker.js eval() setTimeout() Web Workers switch-case (^^)
  • 29. Web Workers Web Workers Worker → fakeworker.js eval() setTimeout() Web Workers switch-case → AlexService Web Workers (^^)
  • 30. HTML5 Web HTML5(Open Web Platform)
  • 31. HTML5 Web
  • 32. Web DB
  • 33. HTML5 Web DB Download/Upload DB
  • 34. HTML5 Web Open Web Architecture( ) DB Download/Upload DB
  • 35. Open Web Architecture • • • • • •
  • 36. Open Web Architecture • • • • • •
  • 37. Open Web Architecture • • • • • •
  • 38. Open Web Architecture • • • • • • • • •
  • 39. Open Web Architecture • • • • • • • • •
  • 40. Alexing Framework!! • • • Cloud DB Client AlexingDownload/Upload DB
  • 41. Alexing Framework • • • • class Cloud Greeting Java Class DB Client DB
  • 42. Alexing Framework • • • • class Cloud Greeting Java Class DB Middleware class Alexing Client Greeting Sync Engine JavaScript Class DB
  • 43. Alexing Framework • • • • class Cloud Greeting Java Class DB Middleware class Alexing Client Greeting Sync Engine edit Application JavaScript Class DB retrieve
  • 44. Alexing Framework (1) • • • • • • •
  • 45. Alexing Framework (2) • • •
  • 46. Alexing Framework (3) • • class.find() • instance.save() • instance.remove() • • database.synchronize()
  • 47. Alexing Framework • • • • • • • •