SlideShare una empresa de Scribd logo
1 de 17
オフラインWeb
最近のデータ永続化事情
~2013春~
2013/06/11  Webオフライン技術研究会#01 LT
小川 充
( )@mitsuruog
自己紹介
小川 充(おがわ みつる)
独立系SI 株式会社クレスコ勤務。
フロントエンジニア。
参加コミュニティ
  
       enja-oss   HTML5j えんぷら部
Webをオフライン化する上で
考慮しなければならないポイントの1つは
クライアント側のデータの永続化
WebStorage VS IndexedDB
今ならどちらを使うべきか?
browser support
Can I Use ?
Web Storage
IE8以上が熱い!モバイルもOK!
http://caniuse.com/ =webstorage#search
IndexedDB
IE10以上。モバイル全滅。。。
http://caniuse.com/ =index#search
ANSWER
多くのブラウザにサポートされている
Web Storage
IndexedDBはやく仕様固めて
せめてモバイルで使えるようにしてください。
ほんと痛いっす。
しかし本当に、webstorageでみんな幸せになれるのか?
WebStorageで大きいファイルを扱うことはNG 。
この辺りの議論は超有名
「 」
でも、ぶちゃけ巨大ファイルじゃなければ
あまり気にしなくていい(らしい)。
There is no simple solution for local storage
WHY?
なぜ 大きいファイル を扱うことがNGなのか?
永続化方法に起因
データはテキストファイルでHDに格納する。
FileI/Oが発生。
セキュリティ対策ソフトなどの影響を受ける。
アクセス方法に起因
アクセスはjavascriptからAPI呼び出し。
javascriptはシングルスレッド。
アクセスした瞬間にレンダリングプロセスがとまる。
CAUTION
ただし、開発中は作業PCのメモリ上に
キャッシュされている可能性が高いので、
問題が見過ごされるケースがある。
SUMMARY
今、データ永続化するなら、幅広いブラウザにサポートされてい
るWebStorageを使うのが良い。
あまり実績がないので、まずはあまり業務にクリティカルでない
部分からオフライン化していくのが吉。
フォームデータの一時保存
(お気に入り)検索条件
(メールなど)プライベートなテンプレート類
ANY QUESTION?
Q.
どれくらいのファイルだとNGですか?
A.
時間切れでエビデンスありません。
続きはWebでということで許してください。
REFERENCE
https://hacks.mozilla.org/2012/03/there-is-no-simple-solution-
for-local-storage/
http://calendar.perfplanet.com/2012/is-localstorage-
performance-a-problem/
http://www.webdirections.org/blog/localStorage-perhaps-not-
so-harmful/
http://www.nczonline.net/blog/2012/03/07/in-defense-of-
localstorage/
THANK YOU :)

Más contenido relacionado

Similar a オフラインWeb 今どきのデータ永続化事情

Android webブラウザのhtml5対応状況
Android webブラウザのhtml5対応状況 Android webブラウザのhtml5対応状況
Android webブラウザのhtml5対応状況
Masakazu Muraoka
 
ボクたちのWWW Webクリエイターのこれからを考える
ボクたちのWWW Webクリエイターのこれからを考えるボクたちのWWW Webクリエイターのこれからを考える
ボクたちのWWW Webクリエイターのこれからを考える
Masakazu Muraoka
 
Windows azureって何
Windows azureって何Windows azureって何
Windows azureって何
Kana SUZUKI
 
みなさんがHtml5をやらなくていい3つの理由
みなさんがHtml5をやらなくていい3つの理由みなさんがHtml5をやらなくていい3つの理由
みなさんがHtml5をやらなくていい3つの理由
Masakazu Muraoka
 
Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~
Atsushi Harada
 
Html5 seminar 1_pac
Html5 seminar 1_pacHtml5 seminar 1_pac
Html5 seminar 1_pac
1PAC. INC.
 
Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1
Masakazu Muraoka
 

Similar a オフラインWeb 今どきのデータ永続化事情 (20)

Android webブラウザのhtml5対応状況
Android webブラウザのhtml5対応状況 Android webブラウザのhtml5対応状況
Android webブラウザのhtml5対応状況
 
第3回企業Webシステム開発セミナー「業務システムにHTML5を上手に取り入れるためには?」
第3回企業Webシステム開発セミナー「業務システムにHTML5を上手に取り入れるためには?」第3回企業Webシステム開発セミナー「業務システムにHTML5を上手に取り入れるためには?」
第3回企業Webシステム開発セミナー「業務システムにHTML5を上手に取り入れるためには?」
 
Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線
 
データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係
データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係
データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係
 
ゲームだけじゃないHTML5
ゲームだけじゃないHTML5ゲームだけじゃないHTML5
ゲームだけじゃないHTML5
 
ボクたちのWWW Webクリエイターのこれからを考える
ボクたちのWWW Webクリエイターのこれからを考えるボクたちのWWW Webクリエイターのこれからを考える
ボクたちのWWW Webクリエイターのこれからを考える
 
Windows azureって何
Windows azureって何Windows azureって何
Windows azureって何
 
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows AzureB 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
 
みなさんがHtml5をやらなくていい3つの理由
みなさんがHtml5をやらなくていい3つの理由みなさんがHtml5をやらなくていい3つの理由
みなさんがHtml5をやらなくていい3つの理由
 
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップおすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップ
 
タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217
 
現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure
 
Microsoft Azure と Swift で開発をする
Microsoft Azure と Swift で開発をするMicrosoft Azure と Swift で開発をする
Microsoft Azure と Swift で開発をする
 
データをどこに溜めよう?ローカル?クラウド?どのデータベース?
データをどこに溜めよう?ローカル?クラウド?どのデータベース?データをどこに溜めよう?ローカル?クラウド?どのデータベース?
データをどこに溜めよう?ローカル?クラウド?どのデータベース?
 
Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~
 
ゼロから学ぶIoT
ゼロから学ぶIoTゼロから学ぶIoT
ゼロから学ぶIoT
 
Html5 seminar 1_pac
Html5 seminar 1_pacHtml5 seminar 1_pac
Html5 seminar 1_pac
 
スタートアップ向け!1人日でできるサービスの高速化方法と成果
スタートアップ向け!1人日でできるサービスの高速化方法と成果スタートアップ向け!1人日でできるサービスの高速化方法と成果
スタートアップ向け!1人日でできるサービスの高速化方法と成果
 
Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1
 
スケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQL
スケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQLスケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQL
スケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQL
 

Más de Mitsuru Ogawa

メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきことメンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
Mitsuru Ogawa
 

Más de Mitsuru Ogawa (18)

React+TypeScriptもいいぞ
React+TypeScriptもいいぞReact+TypeScriptもいいぞ
React+TypeScriptもいいぞ
 
Angular2 rc.1 unit testing overview
Angular2 rc.1 unit testing overviewAngular2 rc.1 unit testing overview
Angular2 rc.1 unit testing overview
 
Webアプリケーションセキュリティ ディスカッション資料
Webアプリケーションセキュリティ ディスカッション資料Webアプリケーションセキュリティ ディスカッション資料
Webアプリケーションセキュリティ ディスカッション資料
 
Lightningコンポーネント事始め
Lightningコンポーネント事始めLightningコンポーネント事始め
Lightningコンポーネント事始め
 
ゆるふわWoT&firefoxOS体験記
ゆるふわWoT&firefoxOS体験記ゆるふわWoT&firefoxOS体験記
ゆるふわWoT&firefoxOS体験記
 
今後のWeb開発の未来を考えてangular jsにしました(拡大版)
今後のWeb開発の未来を考えてangular jsにしました(拡大版)今後のWeb開発の未来を考えてangular jsにしました(拡大版)
今後のWeb開発の未来を考えてangular jsにしました(拡大版)
 
今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしました今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしました
 
エンタープライヤーのためのWeb Componentsハンズオン
エンタープライヤーのためのWeb ComponentsハンズオンエンタープライヤーのためのWeb Componentsハンズオン
エンタープライヤーのためのWeb Componentsハンズオン
 
エンタープライズとHTML5〜エンタープライズでHTML5って本当に必要なのか?〜
エンタープライズとHTML5〜エンタープライズでHTML5って本当に必要なのか?〜エンタープライズとHTML5〜エンタープライズでHTML5って本当に必要なのか?〜
エンタープライズとHTML5〜エンタープライズでHTML5って本当に必要なのか?〜
 
国内初事例に学ぶSAPUI5
国内初事例に学ぶSAPUI5国内初事例に学ぶSAPUI5
国内初事例に学ぶSAPUI5
 
35歳無名のシステムエンジニアが1年半でフロントエンジニアになるために行った3つの成長戦略
35歳無名のシステムエンジニアが1年半でフロントエンジニアになるために行った3つの成長戦略35歳無名のシステムエンジニアが1年半でフロントエンジニアになるために行った3つの成長戦略
35歳無名のシステムエンジニアが1年半でフロントエンジニアになるために行った3つの成長戦略
 
賢くツールを使って脱人海戦術駆動テスト
賢くツールを使って脱人海戦術駆動テスト賢くツールを使って脱人海戦術駆動テスト
賢くツールを使って脱人海戦術駆動テスト
 
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきことメンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
 
HTML5とOSSで作るブラウザで簡単顔認識
HTML5とOSSで作るブラウザで簡単顔認識HTML5とOSSで作るブラウザで簡単顔認識
HTML5とOSSで作るブラウザで簡単顔認識
 
業務系WebアプリケーションがStrutsから旅立つ日
業務系WebアプリケーションがStrutsから旅立つ日業務系WebアプリケーションがStrutsから旅立つ日
業務系WebアプリケーションがStrutsから旅立つ日
 
ゆるふわCSS3
ゆるふわCSS3 ゆるふわCSS3
ゆるふわCSS3
 
これからフロントエンジニアを目指すあなたへ
これからフロントエンジニアを目指すあなたへこれからフロントエンジニアを目指すあなたへ
これからフロントエンジニアを目指すあなたへ
 
Enja OSSやってます
Enja OSSやってますEnja OSSやってます
Enja OSSやってます
 

オフラインWeb 今どきのデータ永続化事情