SlideShare une entreprise Scribd logo
1  sur  81
W3              iP ho ne
      C
                  ery
                 bile
     HTML5


              jQu
                             5
              Mo
Ph




                           L
on




                TM
 eG




             (@ohmyzany)
     ap
HTML5   ...
HISTORY OF HTML
1989         Tim Berners-Lee, HTML Tags       CERN
1994   May The First WWW conference           Geneva
1994   Sep IETF sets up HTML working group
1995   Nov HTML 2.0                            IETF
1997   Jan   HTML 3.2                         W3C
1997   Dec HTML 4.0                           W3C
1999   Dec HTML 4.01                          W3C
2000         XHTML 1.0                        W3C
2002         XHTML 2.0                        W3C
2004         Web Applications 1.0            WHATWG
2007         HTML5 Working Group              W3C
2010   Oct HTML5 Last Call Working Draft      W3C
HISTORY OF HTML
HTML5
                  IE7

                  IE8

                  IE9

      FireFox 4.0b7

    Opera 11 Alpha

        Chrome 8.0

           Safari 5.0

           iOS 4.2.1

        Android 2.2

                        0   50   100   150   200   250     300

                                                         June
http://beta.html5test.com
                                                         November
HTML5
                        0
                  IE7

                            27
                  IE8

                        0
                  IE9

                                                  139
      FireFox 4.0b7

                                             129
    Opera 11 Alpha

                                                                 202
        Chrome 8.0

                                                                     212
           Safari 5.0

                                            125
           iOS 4.2.1

                                                         178
        Android 2.2

                        0        50   100          150         200         250     300

                                                                                 June
http://beta.html5test.com
                                                                                 November
HTML5
                        0
                  IE7
                            17

                                 27
                  IE8
                                 27

                        0
                  IE9
                                           80

                                                            139
      FireFox 4.0b7
                                                                                          249

                                                       129
    Opera 11 Alpha
                                                                                   223

                                                                           202
        Chrome 8.0
                                                                                           252

                                                                                212
           Safari 5.0
                                                                                  220

                                                      125
           iOS 4.2.1
                                                                          198

                                                                   178
        Android 2.2
                                                                   178

                        0             50        100          150         200             250       300

                                                                                                 June
http://beta.html5test.com
                                                                                                 November
HTML5

✤   HTML5                      - http://bit.ly/chh79p

✤                    - http://beta.html5test.com (http://
    html5test.com)
HTML5 OVERVIEW
DOCTYPE

     <!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">

  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
          "http://www.w3.org/TR/html4/strict.dtd">

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
           "http://www.w3.org/TR/html4/loose.dtd">

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
         "http://www.w3.org/TR/html4/frameset.dtd">



   <!DOCTYPE html>
STRUCTURAL ELEMENTS




Before                                                     After
     http://html5doctor.com/designing-a-blog-with-html5/
HTML5 FEATURES

  Web Form        Web SQL Database


 Canvas / SVG       Local Storage


 Audio / Video      Web Workers


 Geolocation         Web Socket


Offline web apps
HTML5 FEATURES

  Web Form        Web SQL Database


 Canvas / SVG       Local Storage


 Audio / Video      Web Workers


 Geolocation         Web Socket


Offline web apps     ● ● ● ● ●
<article>     <mark>
  <aside>      <meter>
<command>       <nav>
 <details>    <progress>
<summary>      <ruby>
 <figure>        <rt>
<figcaption>     <rp>
 <footer>     <section>
 <header>      <time>
 <hgroup>       <wbr>
For multimedia content, sounds, music or
<audio>
          other audio streams.

          For video content, such as a movie clip or
<video>
          other video streams.

         For media resources for media elements,
<source>
         defined inside video or audio elements.


<embed> For embedded content, such as plug-in.
FORM


<canvas> For making graphics with a script.


<datalist> A list of options for input values.


<keygen> Generate keys to authenticate users.


         For different types of output, such as
<output>
         output written by a script.
INPUT TYPE

  tel                   week

 search                  time

  url              datetime-local

 email                  number

datetime                range

  date                  color

 month
DEVICE APIS AND POLICY WORKING GROUP

           Calendar                  Contacts
                                     Address-book

           Camera                   Messaging
         and microphone            (SMS, MMS, Emails)

         System info             Device Interfaces
       (CPU, Network, etc)

   Application Launcher
    (KangChan Lee, WonSuk Lee)
                                      ● ● ●
DEVICE APIS AND POLICY WORKING GROUP

           Calendar                         Contacts
                                            Address-book

           Camera                           Messaging
         and microphone                   (SMS, MMS, Emails)

         System info                   Device Interfaces
       (CPU, Network, etc)

   Application Launcher
    (KangChan Lee, WonSuk Lee)
                                             ● ● ●


    Device APIs and Policy Working Group Meeting
    The DAP WG is planning to have a F2F in Seoul, South Korea
             on March 15-18 2011, hosted by ETRI.
HTML5
                  WEB STORAGE
   WEB APPLICATION SOFTWARE METHODS AND PROTOCOLS USED FOR STORING DATA IN A WEB BROWSER.
WEB STORAGE SUPPORTS PERSISTENT DATA STORAGE, SIMILAR TO COOKIES, AS WELL AS WINDOW-LOCAL STORAGE.
HTML5 WEB STORAGE API

✤                                 Cookie       .

✤   Cookie          .

                            4KB                        .

     HTTP Request                    .

                        .

                                                   .

                                           .
HTML5 WEB STORAGE API

✤   HTML5 Web Storage

                                           .

                                 5MB               .

                                               .

     Key - Value

     LocalStorage, SessionStorage 2    .
HTML5 WEB STORAGE API

    LocalStorage           SessionStorage




(                  )   (                    )
HTML5 WEB STORAGE API

function isSupportLocalStorage() {
  var result = true;
  try { localStorage }
  catch (e) { result = false; }
  return result;
}

function isSupportSessionStorage() {
  var result = true;
  try { sessionStorage }
  catch (e) { result = false; }
  return result;
}
HTML5 WEB STORAGE API


var sKey   = $(“#txtKey”).val();
var sValue = $(“#txtValue”).val();

try {
  localStorage.setItem(sKey, sValue);
} catch (e) {
  if (e == QUOTA_EXCEEDED_ERR) {
    alert(“                      .”);
  }
}



       Key-Value pair
HTML5 WEB STORAGE API



var sKey = “userName”;

localStorage.getItem(sKey);
localStorage.removeItem(sKey);
localStorage.clear();




       SessionStorage    LocalStorage
                                        .
HTML5
        GEOLOCATION
     THE GEOLOCATION API DEFINES A HIGH-LEVEL INTERFACE TO
LOCATION INFORMATION ASSOCIATED ONLY WITH THE DEVICE HOSTING
     THE IMPLEMENTATION, SUCH AS LATITUDE AND LONGITUDE
HTML5 GEOLOCATION API

✤                                    API.

✤                 GPS                       .

     WPS : WiFi Positioning System

✤       ,     ,     ,        ,       ,          .

✤   navigator.geolocation object
HTML5 GEOLOCATION API


if (navigator.geolocation) {
  navigator.geolocation.getCurrentPosition(success, error);
} else {
  alert(“browser does not support geolocation”);
}

function success(position) {
  alert(“latitude=” + position.coords.latitude + “, ”
      + “longitude=” + position.coords.longitude);
}

function error(e) {
  alert(“Error”);
}
HTML5 GEOLOCATION API
HTML5
        WEBSOCKET
        A TECHNOLOGY PROVIDING FOR BI-DIRECTIONAL,
          FULL-DUPLEX COMMUNICATIONS CHANNELS,
OVER A SINGLE TRANSMISSION CONTROL PROTOCOL (TCP) SOCKET
?

✤           TCP Socket
              IETF     .

✤   1           TCP                   .

✤                  ,              ,
                        .

✤                              JavaScript setInterval()
        Reverse Ajax (Comet)                       .
CASE #1.
     WAS
           .
CASE #2.
     WAS
[Constructor (in DOMString url, in optional DOMString protocol)]
interface WebSocket {
  readonly attribute DOMString URL;

 const unsigned short CONNECTING = 0;
 const unsigned short OPEN = 1;
 const unsigned short CLOSED = 2;
 readonly attribute unsigned short readyState;
 readonly attribute unsigned long bufferedAmount;

     attribute Function onopen;
     attribute Function onmessage;
     attribute Function onclose;
 boolean send(in DOMString data);
 void close();
};
WebSocket implements EventTarget;



                        WebSocket Client API Working Draft - 2009   12   22
[Constructor (in DOMString url, in optional DOMString protocol)]
[Constructor (in DOMString url, in optional DOMString[] protocols)]
interface WebSocket {
  readonly attribute DOMString URL;

  const unsigned short CONNECTING = 0;
  const unsigned short OPEN = 1;
  const unsigned short CLOSING = 2;
  const unsigned short CLOSED = 3;
  readonly attribute unsigned short readyState;
  readonly attribute unsigned long bufferedAmount;

       attribute Function onopen;
       attribute Function onmessage;
       attribute Function onerror;
       attribute Function onclose;
  readonly attribute DOMString protocol;
   void send(in DOMString data);
  void close();
};
WebSocket implements EventTarget;


                           WebSocket Client API Editor’s Draft - 2010   12   14
WebSocket Client Sample
WebSocket Server
Opening handshake
✤   JavaApplet            Flash          HTTP Header
                 .

                             (Firewall Circumvention Attack)

                     Host Header           ,

         .

     Cache Poisoning Attack

       Proxy     Cache                     .
Firewall Circumvention Attack
Cache Poisoning Attack
✤   Proxy       Upgrade-based, POST-based
    WebSocket Handshake                     .

✤                          CONNECT mechanism
                 .
✤        Firefox 4 beta 8         Opera 11.0                  WebSocket
                    .

✤   Firefox
                      . (http://hacks.mozilla.org/2010/12/websockets-disabled-in-firefox-4/)
HTML + NATIVE SDK

HYBRID APP
?

✤                         ,
    Native SDK
                 .

✤                        , Native SDK
                     .
✤   iPhone Safari

     http://splax.net/m

     http://www.touchapp.co.uk/iphone
✤

             ,                   .

                 .

                             .

✤

                     .

    Native               .
Native SDK
      HTML, CSS, JavaScript
                                    (iPhone SDK, Android SDK...)

                                                 Native SDK
 (Native         Native       )




Native Browser




                                  Native
HTML, CSS,
 JavaScript
HTML, CSS,
 JavaScript




     JQTouch,
   JQueryMobile
Native Framework



  HTML, CSS,
   JavaScript




        JQTouch,
      JQueryMobile
iPhone SDK
                Android SDK




Native Framework



  HTML, CSS,
   JavaScript




        JQTouch,
      JQueryMobile
iPhone SDK
                Android SDK


   Native App
Native Framework



  HTML, CSS,
   JavaScript




        JQTouch,
      JQueryMobile
iPhone SDK
                Android SDK


   Native App
Native Framework



  HTML, CSS,
   JavaScript




        JQTouch,
      JQueryMobile
iPhone SDK
                Android SDK


   Native App                 App Store
Native Framework



  HTML, CSS,
   JavaScript




        JQTouch,
      JQueryMobile
iPhone SDK
                Android SDK


   Native App                 App Store
Native Framework



  HTML, CSS,
   JavaScript




        JQTouch,
      JQueryMobile
iPhone SDK
                Android SDK


   Native App                 App Store
Native Framework



  HTML, CSS,
   JavaScript




        JQTouch,
      JQueryMobile
✤             (iPhone, Android, Blackberry, Tablet PC...)

✤   iPhone / iPad           Native SDK
    Macintosh       .

✤   Android             Windows, Mac, Linux           .

✤   Blackberry            Windows              .

     Macintosh                            .
✤   Xcode 3.2.4

     iOS4

✤   Eclipse Galileo

✤   PhoneGap Framework

✤   JQuery Framework (for JQueryMobile)

✤   JQueryMobile or JQTouch Framework

✤   Android SDK & Blackberry SDK
PHONEGAP
BUILDING CROSS-PLATFORM MOBILE APPS
     IN HTML, CSS AND JAVASCRIPT
PHONEGAP      ?

✤   HTML, CSS, JavaScript
                                        .


                            .

✤                    HTML5          .

            ,                   .
PHONEGAP
PHONEGAP - IPHONE
PHONEGAP - IPHONE
PHONEGAP - ANDROID
JQUERY MOBILE
 TOUCH-OPTIMIZED WEB FRAMEWORK
    FOR SMARTPHONES & TABLETS
JQUERY MOBILE

✤                        JavaScript Framework.

✤                                  UI Layout        .

                                    Theme       .

✤           Event         .

     Tap, Swipe, Orientation, Scroll...

✤   JQuery Framework

     Ajax, Animation, Transitions, Dialogs...
JQUERY MOBILE

<div data-role="page">
  <div data-role="header">...</div>
  <div data-role="content">...</div>
  <div data-role="footer">...</div>
</div>




                  header

                 content

                  footer
JQUERY HYBRID APP DEMO
JQUERY HYBRID APP DEMO
JQUERY HYBRID APP DEMO
JQUERY HYBRID APP DEMO
JQUERY HYBRID APP DEMO
DEMO



         (iPhone & Android)




http://bit.ly/zany-mobile
HTML5 를 이용한 하이브리드앱 제작

Contenu connexe

En vedette

하이브리드앱 개발 전략과 이슈
하이브리드앱 개발 전략과 이슈하이브리드앱 개발 전략과 이슈
하이브리드앱 개발 전략과 이슈동수 장
 
HTML5를 활용한 하이브리드 앱개발하기
HTML5를 활용한 하이브리드 앱개발하기HTML5를 활용한 하이브리드 앱개발하기
HTML5를 활용한 하이브리드 앱개발하기정현 황
 
xmile by dreamfarmer
xmile by dreamfarmerxmile by dreamfarmer
xmile by dreamfarmer주영 전
 
Test for procedure text (writing test)
Test for procedure text (writing test)Test for procedure text (writing test)
Test for procedure text (writing test)aryantifitri
 
Realwants_SuperstarM
Realwants_SuperstarMRealwants_SuperstarM
Realwants_SuperstarMVentureSquare
 
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 4.리뷰
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 4.리뷰Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 4.리뷰
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 4.리뷰Kyoungsoo Jeon
 
IT비즈니스맨, 테크라이터의 에버노트 활용법 - 다음 김지현 이사
IT비즈니스맨, 테크라이터의 에버노트 활용법 - 다음 김지현 이사IT비즈니스맨, 테크라이터의 에버노트 활용법 - 다음 김지현 이사
IT비즈니스맨, 테크라이터의 에버노트 활용법 - 다음 김지현 이사Gina J Kim
 
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 2. 실행
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 2. 실행Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 2. 실행
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 2. 실행Kyoungsoo Jeon
 
생각정리를 위한 하이브리드 에버노트 (포스트잍편)
생각정리를 위한 하이브리드 에버노트 (포스트잍편) 생각정리를 위한 하이브리드 에버노트 (포스트잍편)
생각정리를 위한 하이브리드 에버노트 (포스트잍편) 경수 김
 
[H3 2012] 하이브리드앱 제작 사례 공유 - 푸딩얼굴인식 3.0
[H3 2012] 하이브리드앱 제작 사례 공유 - 푸딩얼굴인식 3.0[H3 2012] 하이브리드앱 제작 사례 공유 - 푸딩얼굴인식 3.0
[H3 2012] 하이브리드앱 제작 사례 공유 - 푸딩얼굴인식 3.0KTH, 케이티하이텔
 
15 de thi hsg tieng viet lop 3
15 de thi hsg tieng viet  lop 315 de thi hsg tieng viet  lop 3
15 de thi hsg tieng viet lop 3lunosin
 
[홍순성발표자료]에버노트로 할일관리 하기 - 에버노트 비즈니스 컨퍼런스
[홍순성발표자료]에버노트로 할일관리 하기 - 에버노트 비즈니스 컨퍼런스[홍순성발표자료]에버노트로 할일관리 하기 - 에버노트 비즈니스 컨퍼런스
[홍순성발표자료]에버노트로 할일관리 하기 - 에버노트 비즈니스 컨퍼런스@hongss
 
K모바일발표 120113 남들보다뛰어난앱만들기_공유용
K모바일발표 120113 남들보다뛰어난앱만들기_공유용K모바일발표 120113 남들보다뛰어난앱만들기_공유용
K모바일발표 120113 남들보다뛰어난앱만들기_공유용jinwook shin
 
[홍순성]에버노트 A to Z, 활용하기
[홍순성]에버노트 A to Z, 활용하기[홍순성]에버노트 A to Z, 활용하기
[홍순성]에버노트 A to Z, 활용하기@hongss
 
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 1. 수집
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 1. 수집Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 1. 수집
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 1. 수집Kyoungsoo Jeon
 
스프링 코어 강의 2부 - Java 구성을 활용한 스프링 코어 사용
스프링 코어 강의 2부 - Java 구성을 활용한 스프링 코어 사용스프링 코어 강의 2부 - Java 구성을 활용한 스프링 코어 사용
스프링 코어 강의 2부 - Java 구성을 활용한 스프링 코어 사용Sungchul Park
 
Hybrid Mobile Application Framework
Hybrid Mobile Application FrameworkHybrid Mobile Application Framework
Hybrid Mobile Application Framework동수 장
 
에버노트 자기관리 완성하기
에버노트 자기관리 완성하기에버노트 자기관리 완성하기
에버노트 자기관리 완성하기호석 진호석
 
홍순성, 검색기반의 에버노트 분류법
홍순성, 검색기반의 에버노트 분류법홍순성, 검색기반의 에버노트 분류법
홍순성, 검색기반의 에버노트 분류법@hongss
 

En vedette (20)

하이브리드앱 개발 전략과 이슈
하이브리드앱 개발 전략과 이슈하이브리드앱 개발 전략과 이슈
하이브리드앱 개발 전략과 이슈
 
HTML5를 활용한 하이브리드 앱개발하기
HTML5를 활용한 하이브리드 앱개발하기HTML5를 활용한 하이브리드 앱개발하기
HTML5를 활용한 하이브리드 앱개발하기
 
xmile by dreamfarmer
xmile by dreamfarmerxmile by dreamfarmer
xmile by dreamfarmer
 
Test for procedure text (writing test)
Test for procedure text (writing test)Test for procedure text (writing test)
Test for procedure text (writing test)
 
Pjax1
Pjax1Pjax1
Pjax1
 
Realwants_SuperstarM
Realwants_SuperstarMRealwants_SuperstarM
Realwants_SuperstarM
 
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 4.리뷰
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 4.리뷰Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 4.리뷰
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 4.리뷰
 
IT비즈니스맨, 테크라이터의 에버노트 활용법 - 다음 김지현 이사
IT비즈니스맨, 테크라이터의 에버노트 활용법 - 다음 김지현 이사IT비즈니스맨, 테크라이터의 에버노트 활용법 - 다음 김지현 이사
IT비즈니스맨, 테크라이터의 에버노트 활용법 - 다음 김지현 이사
 
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 2. 실행
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 2. 실행Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 2. 실행
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 2. 실행
 
생각정리를 위한 하이브리드 에버노트 (포스트잍편)
생각정리를 위한 하이브리드 에버노트 (포스트잍편) 생각정리를 위한 하이브리드 에버노트 (포스트잍편)
생각정리를 위한 하이브리드 에버노트 (포스트잍편)
 
[H3 2012] 하이브리드앱 제작 사례 공유 - 푸딩얼굴인식 3.0
[H3 2012] 하이브리드앱 제작 사례 공유 - 푸딩얼굴인식 3.0[H3 2012] 하이브리드앱 제작 사례 공유 - 푸딩얼굴인식 3.0
[H3 2012] 하이브리드앱 제작 사례 공유 - 푸딩얼굴인식 3.0
 
15 de thi hsg tieng viet lop 3
15 de thi hsg tieng viet  lop 315 de thi hsg tieng viet  lop 3
15 de thi hsg tieng viet lop 3
 
[홍순성발표자료]에버노트로 할일관리 하기 - 에버노트 비즈니스 컨퍼런스
[홍순성발표자료]에버노트로 할일관리 하기 - 에버노트 비즈니스 컨퍼런스[홍순성발표자료]에버노트로 할일관리 하기 - 에버노트 비즈니스 컨퍼런스
[홍순성발표자료]에버노트로 할일관리 하기 - 에버노트 비즈니스 컨퍼런스
 
K모바일발표 120113 남들보다뛰어난앱만들기_공유용
K모바일발표 120113 남들보다뛰어난앱만들기_공유용K모바일발표 120113 남들보다뛰어난앱만들기_공유용
K모바일발표 120113 남들보다뛰어난앱만들기_공유용
 
[홍순성]에버노트 A to Z, 활용하기
[홍순성]에버노트 A to Z, 활용하기[홍순성]에버노트 A to Z, 활용하기
[홍순성]에버노트 A to Z, 활용하기
 
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 1. 수집
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 1. 수집Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 1. 수집
Outlook 과 OneNote로 스마트한 업무 시스템 만들기 - 1. 수집
 
스프링 코어 강의 2부 - Java 구성을 활용한 스프링 코어 사용
스프링 코어 강의 2부 - Java 구성을 활용한 스프링 코어 사용스프링 코어 강의 2부 - Java 구성을 활용한 스프링 코어 사용
스프링 코어 강의 2부 - Java 구성을 활용한 스프링 코어 사용
 
Hybrid Mobile Application Framework
Hybrid Mobile Application FrameworkHybrid Mobile Application Framework
Hybrid Mobile Application Framework
 
에버노트 자기관리 완성하기
에버노트 자기관리 완성하기에버노트 자기관리 완성하기
에버노트 자기관리 완성하기
 
홍순성, 검색기반의 에버노트 분류법
홍순성, 검색기반의 에버노트 분류법홍순성, 검색기반의 에버노트 분류법
홍순성, 검색기반의 에버노트 분류법
 

Similaire à HTML5 를 이용한 하이브리드앱 제작

Similaire à HTML5 를 이용한 하이브리드앱 제작 (20)

InfoTalk#17 1st
InfoTalk#17 1stInfoTalk#17 1st
InfoTalk#17 1st
 
Change by HTML5
Change by HTML5Change by HTML5
Change by HTML5
 
Websocket shanon
Websocket shanonWebsocket shanon
Websocket shanon
 
HTML5@电子商务.com
HTML5@电子商务.comHTML5@电子商务.com
HTML5@电子商务.com
 
Html ppts
Html pptsHtml ppts
Html ppts
 
HTML
HTMLHTML
HTML
 
HTML5 Introduction
HTML5 IntroductionHTML5 Introduction
HTML5 Introduction
 
Html5 Primer
Html5 PrimerHtml5 Primer
Html5 Primer
 
HTML5 어디까지 왔나?
HTML5 어디까지 왔나?HTML5 어디까지 왔나?
HTML5 어디까지 왔나?
 
HTML5 & Web Platform
HTML5 & Web PlatformHTML5 & Web Platform
HTML5 & Web Platform
 
20100414 kgoon introducing_html5
20100414 kgoon introducing_html520100414 kgoon introducing_html5
20100414 kgoon introducing_html5
 
Echo HTML5
Echo HTML5Echo HTML5
Echo HTML5
 
Firefox 3.5 Overview
Firefox 3.5 OverviewFirefox 3.5 Overview
Firefox 3.5 Overview
 
HTML5のご紹介
HTML5のご紹介HTML5のご紹介
HTML5のご紹介
 
Html5
Html5Html5
Html5
 
HTML5 and web platform
HTML5 and web platformHTML5 and web platform
HTML5 and web platform
 
XTech May 2008
XTech May 2008XTech May 2008
XTech May 2008
 
URL Design
URL DesignURL Design
URL Design
 
Seaside Status Message
Seaside Status MessageSeaside Status Message
Seaside Status Message
 
Seaside News
Seaside NewsSeaside News
Seaside News
 

Dernier

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Dernier (20)

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

HTML5 를 이용한 하이브리드앱 제작

  • 1. W3 iP ho ne C ery bile HTML5 jQu 5 Mo Ph L on TM eG (@ohmyzany) ap
  • 2. HTML5 ...
  • 3. HISTORY OF HTML 1989 Tim Berners-Lee, HTML Tags CERN 1994 May The First WWW conference Geneva 1994 Sep IETF sets up HTML working group 1995 Nov HTML 2.0 IETF 1997 Jan HTML 3.2 W3C 1997 Dec HTML 4.0 W3C 1999 Dec HTML 4.01 W3C 2000 XHTML 1.0 W3C 2002 XHTML 2.0 W3C 2004 Web Applications 1.0 WHATWG 2007 HTML5 Working Group W3C 2010 Oct HTML5 Last Call Working Draft W3C
  • 5. HTML5 IE7 IE8 IE9 FireFox 4.0b7 Opera 11 Alpha Chrome 8.0 Safari 5.0 iOS 4.2.1 Android 2.2 0 50 100 150 200 250 300 June http://beta.html5test.com November
  • 6. HTML5 0 IE7 27 IE8 0 IE9 139 FireFox 4.0b7 129 Opera 11 Alpha 202 Chrome 8.0 212 Safari 5.0 125 iOS 4.2.1 178 Android 2.2 0 50 100 150 200 250 300 June http://beta.html5test.com November
  • 7. HTML5 0 IE7 17 27 IE8 27 0 IE9 80 139 FireFox 4.0b7 249 129 Opera 11 Alpha 223 202 Chrome 8.0 252 212 Safari 5.0 220 125 iOS 4.2.1 198 178 Android 2.2 178 0 50 100 150 200 250 300 June http://beta.html5test.com November
  • 8. HTML5 ✤ HTML5 - http://bit.ly/chh79p ✤ - http://beta.html5test.com (http:// html5test.com)
  • 10. DOCTYPE <!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN"> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> <!DOCTYPE html>
  • 11. STRUCTURAL ELEMENTS Before After http://html5doctor.com/designing-a-blog-with-html5/
  • 12. HTML5 FEATURES Web Form Web SQL Database Canvas / SVG Local Storage Audio / Video Web Workers Geolocation Web Socket Offline web apps
  • 13. HTML5 FEATURES Web Form Web SQL Database Canvas / SVG Local Storage Audio / Video Web Workers Geolocation Web Socket Offline web apps ● ● ● ● ●
  • 14. <article> <mark> <aside> <meter> <command> <nav> <details> <progress> <summary> <ruby> <figure> <rt> <figcaption> <rp> <footer> <section> <header> <time> <hgroup> <wbr>
  • 15. For multimedia content, sounds, music or <audio> other audio streams. For video content, such as a movie clip or <video> other video streams. For media resources for media elements, <source> defined inside video or audio elements. <embed> For embedded content, such as plug-in.
  • 16. FORM <canvas> For making graphics with a script. <datalist> A list of options for input values. <keygen> Generate keys to authenticate users. For different types of output, such as <output> output written by a script.
  • 17. INPUT TYPE tel week search time url datetime-local email number datetime range date color month
  • 18. DEVICE APIS AND POLICY WORKING GROUP Calendar Contacts Address-book Camera Messaging and microphone (SMS, MMS, Emails) System info Device Interfaces (CPU, Network, etc) Application Launcher (KangChan Lee, WonSuk Lee) ● ● ●
  • 19. DEVICE APIS AND POLICY WORKING GROUP Calendar Contacts Address-book Camera Messaging and microphone (SMS, MMS, Emails) System info Device Interfaces (CPU, Network, etc) Application Launcher (KangChan Lee, WonSuk Lee) ● ● ● Device APIs and Policy Working Group Meeting The DAP WG is planning to have a F2F in Seoul, South Korea on March 15-18 2011, hosted by ETRI.
  • 20. HTML5 WEB STORAGE WEB APPLICATION SOFTWARE METHODS AND PROTOCOLS USED FOR STORING DATA IN A WEB BROWSER. WEB STORAGE SUPPORTS PERSISTENT DATA STORAGE, SIMILAR TO COOKIES, AS WELL AS WINDOW-LOCAL STORAGE.
  • 21. HTML5 WEB STORAGE API ✤ Cookie . ✤ Cookie . 4KB . HTTP Request . . . .
  • 22. HTML5 WEB STORAGE API ✤ HTML5 Web Storage . 5MB . . Key - Value LocalStorage, SessionStorage 2 .
  • 23. HTML5 WEB STORAGE API LocalStorage SessionStorage ( ) ( )
  • 24. HTML5 WEB STORAGE API function isSupportLocalStorage() { var result = true; try { localStorage } catch (e) { result = false; } return result; } function isSupportSessionStorage() { var result = true; try { sessionStorage } catch (e) { result = false; } return result; }
  • 25. HTML5 WEB STORAGE API var sKey = $(“#txtKey”).val(); var sValue = $(“#txtValue”).val(); try { localStorage.setItem(sKey, sValue); } catch (e) { if (e == QUOTA_EXCEEDED_ERR) { alert(“ .”); } } Key-Value pair
  • 26. HTML5 WEB STORAGE API var sKey = “userName”; localStorage.getItem(sKey); localStorage.removeItem(sKey); localStorage.clear(); SessionStorage LocalStorage .
  • 27. HTML5 GEOLOCATION THE GEOLOCATION API DEFINES A HIGH-LEVEL INTERFACE TO LOCATION INFORMATION ASSOCIATED ONLY WITH THE DEVICE HOSTING THE IMPLEMENTATION, SUCH AS LATITUDE AND LONGITUDE
  • 28. HTML5 GEOLOCATION API ✤ API. ✤ GPS . WPS : WiFi Positioning System ✤ , , , , , . ✤ navigator.geolocation object
  • 29. HTML5 GEOLOCATION API if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(success, error); } else { alert(“browser does not support geolocation”); } function success(position) { alert(“latitude=” + position.coords.latitude + “, ” + “longitude=” + position.coords.longitude); } function error(e) { alert(“Error”); }
  • 31. HTML5 WEBSOCKET A TECHNOLOGY PROVIDING FOR BI-DIRECTIONAL, FULL-DUPLEX COMMUNICATIONS CHANNELS, OVER A SINGLE TRANSMISSION CONTROL PROTOCOL (TCP) SOCKET
  • 32. ? ✤ TCP Socket IETF . ✤ 1 TCP . ✤ , , . ✤ JavaScript setInterval() Reverse Ajax (Comet) .
  • 33. CASE #1. WAS .
  • 34. CASE #2. WAS
  • 35. [Constructor (in DOMString url, in optional DOMString protocol)] interface WebSocket { readonly attribute DOMString URL; const unsigned short CONNECTING = 0; const unsigned short OPEN = 1; const unsigned short CLOSED = 2; readonly attribute unsigned short readyState; readonly attribute unsigned long bufferedAmount; attribute Function onopen; attribute Function onmessage; attribute Function onclose; boolean send(in DOMString data); void close(); }; WebSocket implements EventTarget; WebSocket Client API Working Draft - 2009 12 22
  • 36. [Constructor (in DOMString url, in optional DOMString protocol)] [Constructor (in DOMString url, in optional DOMString[] protocols)] interface WebSocket { readonly attribute DOMString URL; const unsigned short CONNECTING = 0; const unsigned short OPEN = 1; const unsigned short CLOSING = 2; const unsigned short CLOSED = 3; readonly attribute unsigned short readyState; readonly attribute unsigned long bufferedAmount; attribute Function onopen; attribute Function onmessage; attribute Function onerror; attribute Function onclose; readonly attribute DOMString protocol; void send(in DOMString data); void close(); }; WebSocket implements EventTarget; WebSocket Client API Editor’s Draft - 2010 12 14
  • 39. JavaApplet Flash HTTP Header . (Firewall Circumvention Attack) Host Header , . Cache Poisoning Attack Proxy Cache .
  • 42. Proxy Upgrade-based, POST-based WebSocket Handshake . ✤ CONNECT mechanism .
  • 43.
  • 44. Firefox 4 beta 8 Opera 11.0 WebSocket . ✤ Firefox . (http://hacks.mozilla.org/2010/12/websockets-disabled-in-firefox-4/)
  • 45. HTML + NATIVE SDK HYBRID APP
  • 46. ? ✤ , Native SDK . ✤ , Native SDK .
  • 47. iPhone Safari http://splax.net/m http://www.touchapp.co.uk/iphone
  • 48. , . . . ✤ . Native .
  • 49. Native SDK HTML, CSS, JavaScript (iPhone SDK, Android SDK...) Native SDK (Native Native ) Native Browser Native
  • 50.
  • 52. HTML, CSS, JavaScript JQTouch, JQueryMobile
  • 53. Native Framework HTML, CSS, JavaScript JQTouch, JQueryMobile
  • 54. iPhone SDK Android SDK Native Framework HTML, CSS, JavaScript JQTouch, JQueryMobile
  • 55. iPhone SDK Android SDK Native App Native Framework HTML, CSS, JavaScript JQTouch, JQueryMobile
  • 56. iPhone SDK Android SDK Native App Native Framework HTML, CSS, JavaScript JQTouch, JQueryMobile
  • 57. iPhone SDK Android SDK Native App App Store Native Framework HTML, CSS, JavaScript JQTouch, JQueryMobile
  • 58. iPhone SDK Android SDK Native App App Store Native Framework HTML, CSS, JavaScript JQTouch, JQueryMobile
  • 59. iPhone SDK Android SDK Native App App Store Native Framework HTML, CSS, JavaScript JQTouch, JQueryMobile
  • 60. (iPhone, Android, Blackberry, Tablet PC...) ✤ iPhone / iPad Native SDK Macintosh . ✤ Android Windows, Mac, Linux . ✤ Blackberry Windows . Macintosh .
  • 61. Xcode 3.2.4 iOS4 ✤ Eclipse Galileo ✤ PhoneGap Framework ✤ JQuery Framework (for JQueryMobile) ✤ JQueryMobile or JQTouch Framework ✤ Android SDK & Blackberry SDK
  • 62. PHONEGAP BUILDING CROSS-PLATFORM MOBILE APPS IN HTML, CSS AND JAVASCRIPT
  • 63. PHONEGAP ? ✤ HTML, CSS, JavaScript . . ✤ HTML5 . , .
  • 68.
  • 69.
  • 70.
  • 71.
  • 72. JQUERY MOBILE TOUCH-OPTIMIZED WEB FRAMEWORK FOR SMARTPHONES & TABLETS
  • 73. JQUERY MOBILE ✤ JavaScript Framework. ✤ UI Layout . Theme . ✤ Event . Tap, Swipe, Orientation, Scroll... ✤ JQuery Framework Ajax, Animation, Transitions, Dialogs...
  • 74. JQUERY MOBILE <div data-role="page"> <div data-role="header">...</div> <div data-role="content">...</div> <div data-role="footer">...</div> </div> header content footer
  • 80. DEMO (iPhone & Android) http://bit.ly/zany-mobile

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n