HTML5 Device API 지원 현황 (2014년 4월 기준)

  • W3C를 비롯 웹 진영은 HTML5를 본격적인 OS수준의 App 실행 플랫폼으로 자리매김하려 하지만, 모질라를 제외한 브라우저 벤더(애플, 구글)의 지원이 미미한 상황
  • 애플과 구글은 앱스토어와 구글 플레이 스토어를 중심으로 하는 네이티브 앱 생태계를 지키기 위해 웹 생태계 활성화에 적극적이지 않음
  • Device API를 비롯 HTML5 웹앱 생태계가 활성화되기 위해서는 시간이 필요할 전망

Device API
출처: http://caniuse.com (2014.4.)
Device API          표준화 단계      모바일 브라우저 지원현황
--------------------------------------------------------------------------
File API                 WD        FF 27+, iOS 6+,   Android 4.4+
File Reader API          WD        FF 27+, iOS 6+,   Android 3.0+
Filesystem & Writer API  WD        FF x,   iOS x,    Android x
Geolocation API          CR        FF 27+, iOS 3.2+, Android 2.1+
getUserMedia API         WD        FF 27+, iOS x,    Android x
WebRTC API               WD        FF 27+, iOS x,    Android x (Chrome 29+)
Full Screen API          WD        FF x,   iOS x,    Android x
Web Audio API            WD        FF 27+, iOS 6+,   Android x
Vibration API            WD        FF 27+, iOS x,    Android 4.4+
Battery Status API       CR        FF 27+, iOS x,    Android x



Posted by ingee

댓글을 달아 주세요

좋은 개발 문서를 만났다. Web 개발 Best Practice를 설명하는 문서인데, 개발 프로세스에 대한 설명( Agile Scrum )웹 성능 테스트( Performance )에 대한 설명이 좋았다. 그중 개발 프로세스에 대한 내용을 요약한다.

출처: https://github.com/Snugug/north/blob/master/README.md



Agile Process (Scrum)

프로세스 참여자의 역할과 책임 (Roles and Responsibilities)
+ 프로젝트에 너무 많은 인원이 참여하지 않도록 한다
+ Project Owner
   - 프로젝트 하나에 한명의 Project Owner가 바람직
   - 프로젝트 수행 결과물의 Owner
   - 작업 우선순위 결정, 요구사항 결정, User Story 작성 보조
+ Project Manager
   - 프로젝트 하나에 한명의 Project Manager가 바람직
+ Designer
   - User Interface 디자인과 User Experience 디자인 업무 구분 필요
+ Developer
   - Front End 개발자와 Back End 개발자 업무 구분 필요
+ Quality Assuarance
   - QA가 OK하기 전에는 릴리즈 불가

Agile Scrum
+ User Stories

   - 구현해야 할 단위 기능/작업
   - Benefit Statement, Requirements, Size, Value로 구성
   - Benefit Statement
      . 이 기능을 왜 개발해야 하는가? (사용자 관점에서/ 비즈니스 관점에서)
      . [persona], I want [desire] so that [rationale] 형태로 서술
   - Requirements
      . 기능 명세, 가능한 추가 질문 없이 이해할 수 있도록 분명하게 작성
   - Size and Value
      . Size : 작업 규모, 이 기능을 개발하려면 얼마나 많은 노력이 소요되는가?
      . Value : 사업적 가치, 이 기능이 사업적 목적에 얼마나 부합하는가?
      . Size의 적절성에 대한 개발팀의 합의 필요
+ Backlog
   - User Story를 우선순위에 따라 나열한 리스트
   - 백로그에 존재하는 스토리의 우선순위는 Project Owner가 결정
+ Iteration
   - 개발을 수행하는 짧은 주기 (최대 2주 이내)
   - 각 iteration을 sprint라고 부름
   - 매 iteration마다 백로그에서 개발할 스토리를 선택
   - 개발팀은 매일 15분 이내의 scrum meeting을 가질 것을 권장
      . 개발 현황, 개발 결과, 개발 장애물 공유
      . scrum meeting은 가능한 짧게 하고 이후 후속 미팅을 통해 문제 해결 권장
   - 매 iteration을 마무리할 때마다 선택한 스토리가 제대로 구현되었는지 점검
      . 선택한 스토리를 제대로 구현하지 못했을 경우 iteration fail 판정
      . iteration fail은 큰 문제가 아님, 일정을 다시 조정하면 됨


(이상)

Posted by ingee

댓글을 달아 주세요

W3C TPAC 2013 메모

Dev 2014.03.09 23:21

벌써 한참된, W3C TPAC 2013 메모


게으름이 깊어졌다. 더이상 기억이 유실되기 전에 2013년 중국 심천에서 열렸던 W3C TPAC에 대한 메모를 남긴다.


11.11.월
# System Application WG
: OS와 긴밀히 통합된 Web App을 개발하기 위한 런타임과 API 도출을 목표로 하는 WG
: Native App과 대등한 Web App의 가능성을 논의
: WebOS 에서 전화 calling에 반응하는 app 등 제작 가능
- Service Worker에 대한 논의
  - Page에 종속되지 않은 WebApp
  - 독자적인 life-cycle에 의해 실행
  - system event 처리
  - scheduled wakeup
- Web Manifest에 대한 논의
  - packaged Web App의 메타 정보 서술 방식
  - 크롬, 파이어폭스 등 브라우저 별 독자 구현 방식의 표준화 논의

# 국내 20여명 참여
  ETRI , 달리웍스(주), SKT, 삼성전자 등

11.13.수
# 총회
: 대강당에 모여 W3C의 현안을 공유
- W3C 표준 제정 프로세스를 기존 waterfall 방식에서 agile 방식으로 변환
- Last Call 단계를 폐지 CR 단계에 흡수
- Recomendation 대신 Standard 사용(용어)

# Telco (Web and Mobile WG)
- 차이나모바일, KDDI, 텔레포니카, 하웨이(다수) 참석
- 텔코는 근원적으로 Openness를 필요로 하며 W3C 등 표준화 기구와 협조해야 함

# Web Redesign
- W3C 웹사이트 개편 방안 논의

11.14.목
# Web Crypto
: 표준화가 상당히 진행된 마무리 단계 (LC)

# Web & Mobile
: 모바일 웹앱 관련 표준화 현황과 향후 이슈 논의

# Web Performance Mini WS
: W3C가 현재 집중하고 있는 분야라고 함
: 인텔(중국), NTT(일본), ??(일본) 3개 회사에서 웹 기술 현황 미니 세미나 개최




(이상)

Posted by ingee
TAG HTML5, w3c

댓글을 달아 주세요

장대한 세월 굴러먹은 운영되어온 모질라 프로젝트 답게 문서들이 잘 정리되어 있다. 그들의 오랜 숙적이었던 MS의 MSDN( MS 개발자 네트웍 )을 연상시키는 모질라의 MDN( 모질라 개발자 네트웍 )에서 문서 2개를 골라 요약한다. 한국 모질라 개발팀에서 모질라의 최신 블로그 기사 및 개발 문서들을 잘 번역해서 소개하고 있는 것 같다. 장한 사람들이다. 모질라 프로젝트에 참여하면 세상에 의미 있는 기여를 할 수 있을 것 같은 막연한 설레임이 든다.


모질라 코드에 기여하기
https://developer.mozilla.org/en-US/docs/Introduction
- step 1 : Firefox 등 빌드하기
- step 2 : 모질라에 기여하는 절차 이해하기
- step 3 : 할 일 찾기
    - 평소 불만이었던 문제 해결하기
    - 초보자를 위해 찾아놓은 버그 보기
- step 4 : 버그 해결하기
- step 5 : 코드 리뷰 신청하기
- step 6 : 리뷰 대응하기
- step 7 : 코드를 트리에 넣기
- setp 8 : 반복하기


모질라 코드에 기여하는 요령
https://developer.mozilla.org/en-US/docs/Mozilla_Development_Strategies
- 모질라의 문서는 wiki 기반이다. 직접 수정하라.
- 문서화 스킬이 부족해도 안심하라 문서팀이 도울 것이다.
- QA팀의 역할은 품질을 확인하는 것이지 없던 품질을 추가하는 것이 아니다. 자신의 코드는 자신이 책임져라.
- 일을 시작하기 전에 모듈 리더와 소통하라.
    - 아이디어 단계에서 거절당하는 편이 패치코드를 거절당하는 것보다 덜 아플 것이다.
    - 다음에 할 일을 일러줄 것이다.
    - 막혀있는 문제를 풀어줄 것이다.
- 리뷰를 요청하기 전에 스스로 리뷰하라. 당신의 리뷰 스킬을 높일 필요가 있다.


(이상)


Posted by ingee

댓글을 달아 주세요

Firefox 빌드하기 2

Dev 2013.07.15 12:19

Firefox 빌드하기 2

윈도7에서 빌드환경 갖추기


개발PC 1호기에서 멋지게 한방 빌드를 끝낸 다음, 개발PC 2호기에서 다시 한번 파이어폭스 빌드를 시도했다. 보기 좋게 실패했다. 실패 증상은 다음과 같았다.


- DirectX SDK가 설치되지 않았다. 빌드 과정에서 DirectX가 설치 되지 않아 빌드 못해먹겠다는 에러가 발생했다.

- 우여곡절 끝에 DirectX SDK를 설치하고 빌드했더니 LNK1123 링크 에러가 발생했다.

 2:48.22 Executing: link -NOLOGO -OUT:crashinject.exe -PDB:crashinject.pdb -LARGEADDRESSAWARE -NXCOMPAT -RELEASE -DYNAMICBASE -SAFESEH -DEBUG -DEBUGTYPE:CV -DEBUG -OPT:REF @d:\mozilla-central\obj-i686-pc-mingw32\build\win32\tmp3vs529.list module.res kernel32.lib user32.lib gdi32.lib winmm.lib wsock32.lib advapi32.lib secur32.lib netapi32.lib kernel32.lib user32.lib gdi32.lib winmm.lib wsock32.lib advapi32.lib secur32.lib netapi32.lib
 2:48.22 d:\mozilla-central\obj-i686-pc-mingw32\build\win32\tmp3vs529.list:
 2:48.22     crashinject.obj
 2:48.22
 2:48.22 LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt
 2:48.22


TIP1,

2호기는 Windows7 머신이었다. 여기에 VS2012를 설치했던게 문제의 원인이었다. Windows7에는 VS2010을 권한다.


TIP2,

DirectX SDK 2010년 June 버전과 MS의 최신 SDK들이 잘 맞지 않는다 (설치시 충돌이 일어난다). DirectX SDK를 설치할 때는 VS2012 관련 SW들을 모두 제거하고 설치해야 한다. 그리고, tool 설치 순서가 중요한데, DirectX SDK --> Windows7 SDK --> VS2010 Express 순서로 설치할 것을 권한다.


TIP3,

VS2010 계열 빌드 도구(리소스컴파일러)와 VS2012 계열 빌드 도구 사이에 충돌이 있다 (실행시 LINK 에러가 난다). 순간의 욕심으로 VS2012를 설치했다가 파이어폭스 빌드 실패를 맛보고 있는 상태라면, VS2012 관련 SW 전부, .Net SDK 관련 SW 전부, Windows SDK 전부를 제거한 다음, 필요한 빌드 도구들을 위의 순서대로( DirectX SDK --> Windows7 SDK --> VS2010 Express ) 다시 설치하고 시도해 볼 것을 권한다.



(이상)

Posted by ingee

댓글을 달아 주세요

Firefox 빌드하기

Dev 2013.07.02 22:37

Firefox 빌드하기

https://developer.mozilla.org/en-US/docs/Simple_Firefox_build

준비물 갖추기 (for Windows)
    - VC++ 2010 (official) or 2012; Express(free) 버전도 무방
    - VC++ 2010을 쓸 경우 Windows 7 SDK도 추가 설치
    - June 2010 DirectX SDK 설치
    - MozillaBuild 패키지 설치
        - 설치후 c:\mozilla-build 디렉토리의 start-msvc10.bat (VS 2010) 실행, 콘솔이 정상적으로 실행되는지 확인
소스 가져오기
    - hg clone https://hg.mozilla.org/mozilla-central 실행, mozilla-central 디렉토리와 소스가 생성됨
빌드하기
    - mozilla-central 디렉토리에서 ./mach build 실행
실행하기
    - Windows: obj-.../dist/bin/firefox.exe 실행
소스 업데이트하기
    - mozilla-central 디렉토리에서 hg pull -u 실행


정말... 아무런 힘 안들이고 한방에 빌드가 끝났다. 모질라 만세~!


Posted by ingee

댓글을 달아 주세요

WebRTC 현황 요약

Dev 2013.06.21 15:24

WebRTC 현황 요약 (2013.6.21. 기준)


- WebRTC는 브라우저 간의 실시간 통신 서비스(음성통신, 화상회의)를 위한 표준기술

- 안드로이드 단말에서의 WebRTC 지원 현황

- 2013-04-16, WebRTC가 안드로이드 파이어폭스에 구현됨

- 디폴트 설정은 off

- ICS 이전 버전에서는 사용에 문제 있을 수 있음

- 이유는 제조사에 따라 일부 하드웨어의 경우 성능이 부족함

- 그리고 일부 제조사 단말에는 WebRTC를 위해 필요한 안드로이드 API가 부재함

- 그러나, 갤탭 10.1 안드로이드 3.2의 경우 비디오 콜이 정상 수행됨

- 2013-06-03, 크롬 안드로이드 베타 최신 버전에서 WebRTC 지원 시작함

- 2013년 6월 현재, 안드로이드 내장 브라우저는 WebRTC를 지원하지 않음


Reference

WebRTC support on Android

http://www.morbo.org/2013/04/webrtc-support-on-android.html

2013-04-17


You Can Try WebRTC on Chrome for Android Beta Now

http://www.chromestory.com/2013/03/you-can-try-webrtc-on-chrome-for-android-beta-now/

2013-06-03


[인터넷] 웹 브라우저에서의 실시간 통신기술

http://weekly.tta.or.kr/weekly/files/20124031104031_admin.pdf

2012-06-04


(이상)


Posted by ingee
TAG HTML5, WebRTC

댓글을 달아 주세요

  1. 김호천 2013.06.23 23:33 신고  댓글주소  수정/삭제  댓글쓰기

    잘 보고 갑니다^^

  2. ajb 2014.11.29 16:41 신고  댓글주소  수정/삭제  댓글쓰기

    안녕하세요 WebRTC에 관심이많은데요
    WebRTC를 이용하면 제가 만약 안드로이드폰으로 말을하면 그 말이 실시간으로 웹에 나올수있게 할수있습니까 ?ㅠ

    • ingee 2015.05.26 17:56 신고  댓글주소  수정/삭제

      예, 가능합니다. 예전엔 스카이프나 카톡 같은 전용 어플리케이션으로만 가능하던 P2P 통신이 웹브라우저라는 범용 어플리케이션으로 가능해진 것이 WebRTC의 가장 큰 의미라고 생각합니다.

asm.js에 대하여

Dev 2013.06.10 18:38

asm.js에 대하여


배경

- 파이어폭스 팀에서 개발

- 파이어폭스 차기버전 JavaScript 엔진(OdinMonkey)이 asm.js 지원 예정

- 모질라에서 asm.js를 이용하여 Epic의 언리얼 엔진3(heavy한 게임엔진)를 시연함


개요

- JavaScript의 subset

- 새로운 언어가 아님

- 기존 모든 브라우저에서 실행 가능함

- asm.js를 지원하지 않는 JavaScript 엔진도 asm.js 코드를 실행시킬 수 있음

- 변수 타입을 엄격하게 체크하는 문법을 정의(기존 JavaScript는 변수 선언시 타입을 지정하지 않음)

- 변수 타입을 엄격하게 정의하면 JIT(실행시간 컴파일) 뿐 아니라 AOT(Ahead Of Time: 실행전 컴파일)이 가능해짐

- 파이어폭스는 조만간 asm.js에 최적화된 컴파일러를 제공할 예정이며 벤치마크 결과는 "경이적"


전망

- 모질라는 기존 언어로 개발된 코드를 asm.js 코드로 변환해주는 도구 제공을 약속

- 특히 엄격한 타입 체킹 언어인 C/C++은 asm.js 코드로 변환하기에 최적인 언어


Reference

- Big Web App? Compile It! 

   http://kripken.github.io/mloc_emscripten_talk/#/

- [번역] asm.js : 컴파일러를 위한 low level, 고도로 최적화 가능한 JavaScript의 서브셋

   http://atconsole.com/2013/04/04/%EB%B2%88%EC%97%AD-asm-js-%EC%BB%B4%ED%8C%8C%EC%9D%BC%EB%9F%AC%EB%A5%BC-%EC%9C%84%ED%95%9C-low-level-%EA%B3%A0%EB%8F%84%EB%A1%9C-%EC%B5%9C%EC%A0%81%ED%99%94-%EA%B0%80%EB%8A%A5%ED%95%9C-javascript/

- asm.js에 대해서

   http://blog.outsider.ne.kr/927

 

(끝)

Posted by ingee

댓글을 달아 주세요

JavaScript 빌드 도구(build tool) 동향 요약

스캐폴딩(scaffolding) 기능을 중심으로...



보일러플레이트(boilerplate) 도구

- 보일러플레이트는 코드 재사용을 위해 코드 골격을 미리 구성해 놓은 것


백본 보일러플레이트(backbone boilerplate)

- Backbone.js 프레임워크를 이용하는 프로젝트를 위한 보일러플레이트

- 소스 위치: https://github.com/tbranyen/backbone-boilerplate

- 다른 백본 보일러플레이트도 있지만 이 프로젝트가 제일 좋음 (스스로 좋다고 주장함)

    - requireJS를 잘 지원

    - 라이브러리 소스를 있는 그대로 (변형하지 않고) 사용

    - 빌드 시스템을 구비

    - 샘플 앱을 지원

    - 필요한 골격만 지원

    

스캐폴딩

- 스캐폴딩은 MVC f/w 특히 RoR(루비 온 레일즈)에서 널리 사용되기 시작함

- 어플리케이션 구축에 필요한 뼈대를 자동 생성해주는 기능

- 기본 파일과 디렉토리 구조를 매번 새로 만들어야 하는 번거로움을 제거


grunt

    - grunt는 node.js 기반의 JavaScript 빌드 도구

    - 설치방법: node.js가 설치된 상태에서 npm install 명령을 이용 설치

        - node.js는 이제 JavaScript 실행환경일 뿐 아니라 훌륭한 개발환경

    - package.json 파일에 grunt 실행에 필요한 모듈 서술

        - 프로젝트 root에 두며 소스 버전 관리 대상

        - npm install 명령을 실행하면 필요한 모듈이 자동 설치됨 ( 다시 말하지만, node.js는 이제 훌륭한 개발환경! )

        - npm init 명령으로 기본적인 package.json 파일을 생성함

    - gruntfile.js 파일에 일괄 처리할 작업을 정의

        - make 시스템의 makefile에 해당

        - grunt 0.3.x 버전에서는 gurnt.js로 통용됨 

        - grunt 0.4.x 버전에서 gruntfile.js로 이름 변경됨

        - 프로젝트 root에 두며 소스 버전 관리 대상

        - grunt plugin이 package.json에 들어 있고, 

            npm install 명령으로 설치됐다면, 

            gruntfile로 쉽게 실행시킬 수 있음

        - pkg 섹션

            - pakcage.json을 가리키는 역할

            - package.json에는 프로젝트 관련 메타데이터가 정의됨

            - pkg.name 같은 형태로 메타데이터 참조가 가능

        - meta 섹션

            - 내부 속성으로 banner만 있음

            - 합치거나 축약할 때, js 파일 상단에 자동으로 넣는 주석 지정

        - lint 섹션

            - JSHint를 이용 JavaScript 파일 테스트

            - 테스트할 파일 목록을 자유롭게 grouping하여 지정 가능

        - qunit 섹션

            - jQuery의 테스트 프레임워크인 QUnit을 이용 테스트 수행할 대상 파일을 지정

            - PhantomJS가 설치되어 있어야 함

            - lint 섹션처럼 테스트할 파일 목록을 자유롭게 지정 가능

        - concat/ min 섹션

            - 파일을 합치거나(concat), 공백을 제거해서 축약(min)시키는 작업을 실행

        - watch 섹션

            - 지정된 파일이 변경될 경우, 지정된 작업을 수행

        - jshint 섹션

            - lint 섹션을 실행할 때, JSHint 툴에 전달할 옵션 정의

            - 실행 섹션이 아님

        - uglify

            - min 섹션을 실행할 때, UglifyJS 툴에 전달할 옵션 정의

            - 실행 섹션이 아님


grunt-bbb

    - grunt-bbb는 grunt의 플러그인

    - bbb는 Backbone Boilerplate Build를 뜻함

    - npm install -g bbb 명령으로 설치 ( 다시 말해 node.js는 이제 정말 훌륭한 개발환경! )

    - 사용 명령어

        - init (bbb)

            - bare boilerplate 프로젝트 생성

        - init:module (bbb)

            - 새로운 모듈 생성

            - model, collection, view를 통합하는 module 생성

            - js, css, html 생성

        - server (bbb)

            - 웹서버를 띄워 프로젝트를 실행


Reference

- http://blog.outsider.ne.kr/892

- https://github.com/tbranyen/backbone-boilerplate/wiki/Getting-started-overview

- https://github.com/tbranyen/backbone-boilerplate/wiki/Installation

- http://gruntjs.com/

- https://github.com/backbone-boilerplate/grunt-bbb


(이상)

Posted by ingee

댓글을 달아 주세요

http://www.w3.org/Mobile/mobile-web-app-state/

2013년 2월


0. 개요

- 현재 웹기술이 full-featured 모바일 앱을 만들만큼 충분히 무르익음

- W3C는 웹앱 개발 기술을 확장하기 위해 노력하고 있으며 관련 교육 링크도 운영하고 있음 (http://www.w3devcampus.com/writing-great-web-applications-for-mobile/)


1. Graphics

- SVG : Scalable 벡터 그래픽 표준

- Canvas : 2D programmatic API 표준

- 폰트 : WOFF(Web Open Font Format) 표준

- Fullscreen API, Screen Orientation API 표준

* WebGL(3D graphic API)은 W3C 밖에서 표준화 작업 진행 중(Khronos Group)

* 표준화 안정 단계, 표준 적용 활성화 단계


2. Multimedia

- <video>, <audio> 태그 : 과거 image처럼 멀티미디어 요소를 Web의 1st class citizen으로 취급

- Encrypted Media Extensions : DRM 컨텐츠 재생에 관한 표준

- Pick Media Intent, Networked Service Discovery API : DLNA 컨텐트에 대한 접근 표준

- HTML Media Capture : 카메라, 마이크(녹음) 등에 의한 captured 컨텐트에 대한 접근 표준

- Web Real-Time Communication WG 활동 중

- Web Audio API : 오디오 컨텐트에 대한 분석, 수정, 합성을 위한 API 표준

- W3C Web and TV Interest Group : 모바일 Web을 통해 TV 시청 경험을 풍요롭게 하는 연구 진행 중

* 표준화 초기 단계, 표준 적용 초기 단계(모바일에서 활용 제한적)


3. Device Adaptation

- Device Description Repository API : 다양한 장치 특성(스크린 크기, 입력 장치 특성, 미디어 기록/재생 특성 등)을 조회할 수 있는 server-side API 표준

- Media Capture Streams API : 카메라, 마이크 등의 media capture 장치 제어 표준

- CSS Media Query : 반응형 layout 지원 표준

- Adaptive images(picture 태그, srcset 속성) : 화면 크기에 최적인 이미지를 다운로드 하도록 지원

* 표준화 초기 단계, 표준 적용 초기 단계


4. Forms

* W3C는 모바일 기기의 제한된 입력 기능을 보완하기 위한 form 구성 요소를 지원하기 위해 노력 중

- date and time <input type="date">: OS가 제공하는 native calendar 컨트롤 사용 지원

- <input type="email">, <input type="tel">, <input type="url"> : 데이터 형태에 따른 키보드 지원

* 표준화 안정 단계, 표준 적용 초기 단계


5. User interactions

- Pointer Events : 터치 기기 및 마우스 등의 전통적 포인터 기기의 이벤트 관련 표준

- vibration API : 햅틱 피드백(진동) 관련 표준

- IndieUI Events : 기기별 specific 이벤트를 한 레벨 추상화한 이벤트 표준("click", "key press", "touch" 이벤트를 대신하는 "undo", "next page" 이벤트)

- Web Notifications : 웹을 통한 사용자 notification 표준

- Speech API Community Group : 음성인식 기반 사용자 인터랙션 표준 논의 중

- Mobile Accessibility, WAI-ARIA : 장애인을 위한 웹 접근성 관련 표준 논의 중

* 표준화 초기 단계, 표준 적용 초기 단계


6. Data storage

- Web Storage : 브라우저를 통한 간단한 데이터 저장/관리 API 표준

- File Reader API, File Writer API, FileSystems API : 정교한 파일 관리 API 표준

- Indexed Database API : 로컬 DB 관리 API 표준

- Quota Management API : 웹앱을 위한 로컬 저장공간 확보 관련 API 표준

- Web Cryptography API : 데이터 암호화 관련 API 표준

* 표준화 초기 단계, 표준 적용 초기 단계


7. Personal Information Management

- Contacts API, Calendar API : 주소록, 일정 정보 관리 API 표준

* 관련 API 표준이 Web Intents 기반 API 형태로 대치되고 있는 중

* 표준화 아주 초기 단계, 표준 적용 전무


8. Sensors and hardware integration

- Geolocation API : 센서를 통해 기기의 현재 위치를 알아내는 API 표준(GPS, WiFi 네트웍, Cell 네트웍 등의 방법 등 중 가능한 방법을 이용)

- DeviceOrientation Event Specification : 센서를 통해 기기의 가로/세로 상태를 알아내는 API 표준

- Battery Status, Proximity sensors, Ambient Light Events 등 표준 stable 단계

- NFC WG : NFC 관련 표준 논의 중

* 표준화 안정 단계, 표준 적용 초기 단계


9. Network

- XMLHttpRequest : AJAX API 표준

- Cross-Origin Resource Sharing : 현재 웹 페이지와 다른 도메인의 자원을 공유하기 위한 표준

- Push API : 웹앱이 (브라우저에 활성화되지 않은 상태에서도) 서버로부터 전달되는 메시지를 수신하기 위한 표준

- WebSocket API : 저비용 양방향 통신 지원 표준

- Web Real-Time Communications : P2P 데이터 통신 지원 표준

- network-information API : 현재 이용하고 있는 통신망의 bandwidth 등의 정보를 파악하기 위한 표준

* 표준화 안정 단계, 일부 표준 적용 단계


10. Communication and Discovery

- Messaging API : sms://, mms://, mailto:// 등 URI 스킴 기반 메시지 전달 표준, Web Intents 방식으로 재정의될 예정

- Networked Service Discovery API : DLNA등 로컬 네트웍 서비스와 웹앱 사이의 seamless 협업을 위한 표준

- Web Real-Time Communications WG : 커뮤니케이션 관련 표준을 주도적으로 논의 중

* 표준화 초기 단계, 표준 적용 초기 단계


11. Packaging

* 웹앱을 오프라인 상태에서 이용하기 위한 표준과 웹앱을 app store를 통해 유통할 수 있는 포맷으로 만들기 위한 표준

- ApplicationCache : 웹앱을 오프라인 상태에서도 이용하기 위한 표준

- W3C Widgets : 웹앱을 ZIP 형태로 패키징하기 위한 표준

* 표준화 안정 단계, 일부 표준 적용 단계


12. Performance & Optimization

- Web Performance WG : Navigation Timing, Resource Timing, Performance Timeline, User Timing 등 웹앱 성능 최적화 도구 개발 중

- Page Visibility API : 페이지가 보이지 않는 시점에서 네트웍 자원 사용을 억제하기 위한 표준

- battery API : 배터리 잔량에 따라 자원 활용을 억제하기 위한 표준

- Web Workers : 리소스를 많이 소비하는 작업을 백그라운드 스레드로 처리하기 위한 표준

* 표준화 안정 단계, 표준 적용 초기 단계


(이상)

Posted by ingee

댓글을 달아 주세요