どうなる?windows 8時代の業務アプリ開発
DESCRIPTION
Developers Summit 2012 17-D-4TRANSCRIPT
Developers Summit 2012
どうなる? Windows 8時代の業務アプリ開発
グレープシティ株式会社
八巻 雄哉
Developers Summit 2012
Windows 8は売れるのか? ここが重要
Developers Summit 2012
とある情報筋によれば…
Developers Summit 2012
グレープシティ メールマガジン PowerNews 339号 アンケート
ならない
55% わからない
21%
なる
24%
Windows 8はビッグウェーブになる?
2011/11/10配信
Developers Summit 2012
なぜ悲観的な予想が多いのか?
Developers Summit 2012
Windows 7
Developers Summit 2012
Windows 8
Developers Summit 2012
変わりすぎ
Developers Summit 2012
Vistaの二の舞になるのでは?
互換性がない
重い
Developers Summit 2012
BUILD2011 基調講演より
Developers Summit 2012
BUILD2011 基調講演より
• Windows 7よりさらによくなる
Windows 8では、Windows 7で動作していたものがすべて動く
• Windowsをチップセットからエクスペリエンスまで再考する
新しく幅広い「可能性、シナリオ、フォームファクター」
www.buildwindows.com
Developers Summit 2012
BUILD2011 基調講演より
• Windows 7よりさらによくなる
Windows 8では、Windows 7で動作していたものがすべて動く
• Windowsをチップセットからエクスペリエンスまで再考する
新しく幅広い「可能性、シナリオ、フォームファクター」
www.buildwindows.com
Developers Summit 2012
デスクトップ
Windows 7 Windows 8
Developers Summit 2012
スタート メニュー/スクリーン
Windows 7 Windows 8
Developers Summit 2012
Metroスタイルアプリ
Windows 7
該当なし
Windows 8
Developers Summit 2012
Metroスタイルアプリ デスクトップアプリ
Windowsカーネルサービス
Windows Runtime
(WinRT)
システムサービス
カーネル
Windows API
.NET Framework
.NET
アプリケーション
アプリケーション
ネイティブ
アプリケーション
Metroスタイル
アプリケーション
アプリケーション開発視点
.NET
Fra
mew
ork
Win
JS
Developers Summit 2012
従来のWindows利用
従来のWindows部分(デスクトップ)は 基本的に変わっていない
従来のWindows利用として悲観的な要素は少ない
むしろプラス要素多数
UEFIとハイブリッドブートによる超高速起動
Windows 7よりも少ないメモリ使用量
PCの同期機能
OSの「リセット」と「リフレッシュ」
仮想ストレージ
Developers Summit 2012
BUILD2011 基調講演より
• Windows 7よりさらによくなる
Windows 8では、Windows 7で動作していたものがすべて動く
• Windowsをチップセットからエクスペリエンスまで再考する
新しく幅広い「可能性、シナリオ、フォームファクター」
www.buildwindows.com
Developers Summit 2012
BUILD2011 基調講演より
• Windows 7よりさらによくなる
Windows 8では、Windows 7で動作していたものがすべて動く
• Windowsをチップセットからエクスペリエンスまで再考する
新しく幅広い「可能性、シナリオ、フォームファクター」
www.buildwindows.com
Developers Summit 2012
何を再考したのか?
パソコン用OSだったWindowsを さまざまなフォームファクターの コンピューターで使えるOSとして再考した
省電力化
パフォーマンス
タッチ操作と各種センサーのサポート
さまざまなデバイスとの接続性
制限による操作や理解の単純化
Developers Summit 2012
人と情報との接点が多様化
一家に一台 時代
一人一台 時代
場面に一台 時代
時間:人が使っていないとき
場所:家
時間:いつでも
場所:どこでも
時間:いつでも
場所:どこでも
場面:あらゆる場面
人:ほとんど誰でも
Developers Summit 2012
Productivity Future Vision
http://www.microsoft.com/office/vision/
Developers Summit 2012
① 眼鏡型デバイス
Developers Summit 2012
② スマートフォン的なもの
Developers Summit 2012
③ 車の窓ガラス型デバイス
Developers Summit 2012
④ 名刺サイズのデバイス
Developers Summit 2012
⑤ デジタルサイネージ的なもの
Developers Summit 2012
⑥ 本のように折りたためるデバイス
Developers Summit 2012
⑦ 壁掛け型デバイス
Developers Summit 2012
⑧ デスクトップPC的なもの
Developers Summit 2012
⑨ デスクのトップがデバイス
Developers Summit 2012
⑩ 壁型デバイス
Developers Summit 2012
⑪ スレートPC的なもの
Developers Summit 2012
⑫ スレートPC的なもの その2
Developers Summit 2012
⑬ 壁型デバイス その2
Developers Summit 2012
⑭ 冷蔵庫型デバイス
Developers Summit 2012
14種類のデバイスが登場
① 眼鏡型デバイス
② スマートフォン的なもの
③ 車の窓ガラス型デバイス
④ 名刺サイズのデバイス
⑤ デジタルサイネージ的なもの
⑥ 本のように折りたためる デバイス
⑦ 壁掛け型デバイス
⑧ デスクトップPC的なもの
⑨ デスクのトップがデバイス
⑩ 壁型デバイス
⑪ スレートPC的なもの
⑬ 壁型デバイス その2
⑭ 冷蔵庫型デバイス
Developers Summit 2012
Windows CE系 ARM、MIPS、SuperH
Windows Phone 7
Windows Embedded Compact
Windows NT系 X86、x64
Windows
Windows Embedded
Xbox 360 OS
Windows NT系 PowerPC
Windows NT系
噂話を含めればこんな感じ
X86、x64、ARM
Windows 8
Windows Phone 8
次期Xbox
?
Developers Summit 2012
Windows 8
加速するデバイス多様化への対応
ユビキタスコンピューティング時代への 出発点
新たなコンピューティング機会の創出
デベロッパーにとっての大きなチャンス
活かせるスキル資産
活かせるコード資産
Developers Summit 2012
さしあたっては「タッチ」
Developers Summit 2012
Windows搭載のスレートPCは 普及するのか?
Developers Summit 2012
同じ値段ならどちらを購入?
スレートとしてもノートとしても 使えるPC
ノートとしてしか 使えないPC
ハードウェアメーカーはタッチ対応を迫られる
Developers Summit 2012
良くも悪くもWindowsは多勢
Android端末の登録台数、世界で累計2億
iOS端末(iPhone、iPad、iPod Touch)の合計2億5000万
Windows 7売上本数は5億2500万本
全バージョンで12.5億台のWindows PC
売れなかったという認識の Vistaでも累計1億8000万本
Developers Summit 2012
企業利用についてはどうなのか?
Developers Summit 2012
コンシューマ化
一般消費者向けに開発された新技術が、 消費者の間で浸透した後、 企業ITシステムにも取り入れられる現象
Intelが考えるコンシューマ化
ハードウェア、および、アプリケーションの両方について、
パーソナル・ライフにおけるテクノロジー体験が、仕事で
使うことが期待されるテクノロジーに対して与える影響力
が増え続けること
【山田祥平のRe:config.sys】 Intelが考える会社の便利と個人の便利http://pc.watch.impress.co.jp/docs/column/config/20111111_489906.html
Developers Summit 2012
スレートPCの出荷台数予測
1610万台
ビジネス利用のシェア
Infographic: The State of Tablet Adoption at Work | Tablets at Work Blog http://www.tabletsatwork.com/2011/10/infographic-the-state-of-tablet-adoption-at-work/
2010年 2015年
1億4720万台
6% 30%
Developers Summit 2012
現在のスレートPCにおいて 企業利用を阻んでいるもの
OSの頻繁なバージョンアップ
端末管理の煩雑さ
アプリケーションの互換性
企業レベルのセキュリティに対応しづらい
既存ネットワーク環境とは別に専用の接続環境を用意するといった対応も行われているほど
Developers Summit 2012
実は向いている? Metroスタイルで作る業務アプリ
業務アプリケーションに禁止/制限はつきもの
アプリケーションの操作を禁止/制限
例:右クリック無効、半角カタカナ入力無効
アプリケーションのインストールを禁止/制限
業務に不要なアプリをインストールさせない
タッチUIは必要な操作だけを提供しやすい
グループポリシーを使用した Metroスタイルアプリのインストール許可
Developers Summit 2012
2012 2013 2014 2015 2016
企業への普及
利用シーンに合った単一目的のアプリ
1年後、2年後の状況を予想
Windows 8
リリース
コンシューマへの普及
明確な導入目的なし(会議資料閲覧程度)
新しいビジネスモデルの構築
既存業務アプリの延長線上
Developers Summit 2012
タッチ対応の開発需要
第一段階
既存アプリのタッチ対応(改修)
第二段階
タッチに最適化されたUIの新規開発
Developers Summit 2012
既存アプリのタッチ対応 第一段階
Developers Summit 2012
レガシーサポート
ジェスチャ マップ先 生成されるメッセージ
タッチ マウスの左クリック WM_LBUTTONDOWN WM_LBUTTONUP
パン スクロール ホイールの使用
WM_VSCROLL
WM_HSCROLL
プレスアンドホールド マウスの右クリック WM_RBUTTONDOWN
WM_RBUTTONUP
ズーム
Ctrlキーを押しながらマウス ホイールを回転させてスクロールする操作
lParam で
MK_CONTROL が設定された
WM_MOUSEWHEEL
Developers Summit 2012
レガシーサポート DEMO
Developers Summit 2012
対応が必要となる操作
①マウスカーソルの位置に依存した操作
例:マウスホバーでドロップダウン
② BUTTONDOWNとBUTTONUPを 分けて処理する必要がある操作
例:マウスボタン押しっぱなし操作
③マウス用の寸法でタッチ不能
例:スライダーのつまみをドラッグ
Developers Summit 2012
小さすぎてタッチ不能の例
Developers Summit 2012
小さすぎてタッチ不能の例
Developers Summit 2012
レイアウトを保ったまま サイズを確保する例
DEMO
Developers Summit 2012
1993年にVisual Basic向けのコンポーネントを販売開始
業務アプリケーション開発者を支援する製品を 提供し続けて18年の開発ツールベンダー
多彩なラインナップを誇る製品群 日本仕様を強みとした 自社開発製品
海外の優れた製品を 日本語版としてローカライズ
Developers Summit 2012
ご期待ください
グレープシティでは、
Windowsフォーム と
ASP.NET Webフォーム
の主力製品において、Windows 8における
タッチ操作への対応を
予定しています
Developers Summit 2012
タッチに最適化されたUIの 新規開発
第二段階
Developers Summit 2012
今何をしておくべきか
技術者として普通に考えれば 「Metroスタイルアプリの開発スキルを 身につける」ということになるが…
お勧めしたい「今しておくべきこと」
タッチデバイスのヘビーユーザーになる
相対配置をマスターする
Developers Summit 2012
第三次ユーザインターフェース革命
CUI(Character User Interface)
GUI(Graphical User Interface)
NUI(Natural User Interface)
Touch User Interface
Tangible User Interface
Perceptual User Interface
Developers Summit 2012
NUIの直接性
マウス操作とタッチ操作を比較 人 マウス(コントローラ) カーソル UI
人 UI
クリック感のない操作デバイス 処理を待つことに慣れていても、押したかそうでないかが分からないという状況には慣れていない
フィードバックがとても大切
Developers Summit 2012
習うより慣れよう
みんな初めは利用者だった
利用者を通り越していきなり PC向けアプリケーションの開発者に なった人は(最近では)いないはず
タッチで本当に使えるUIを創り出すには
習うより慣れろ
Developers Summit 2012
スマートフォンを 持っている人?
アンケート
Developers Summit 2012
スレート(タブレット)PCを 持っている人?
アンケート
Developers Summit 2012
このうち2つ以上持っている人? アンケート
iOS
Android
Windows Phone
Developers Summit 2012
今何をしておくべきか
タッチデバイスのヘビーユーザーになる
Windows 8のスレートPCが 用意できればそれは最良だが…
まだまだハードルが高い
今ならWindows Phoneがおすすめ
Windows PhoneとWindows 8の共通点
Metro UI
ストア(Marketplace)
開発言語とフレームワーク
Developers Summit 2012
Windows Phone
ヘビーユーザーになったら開発もしてみよう
Windows Phoneアプリ開発は 今すぐ始められる
Windows Phone SDK 7.1(無償)
Visual Studio、Expression Blend、 Windows Phone Emulator
Developers Summit 2012
ComponentOne Studio for Windows Phone
個人開発者向けに
無償利用プログラムを提供予定
3月14日発売予定
Developers Summit 2012
Windows Phone
Windows Phoneでは体験できない要素
マウスサポート
多様な解像度
Developers Summit 2012
FlipViewコントロール DEMO
Developers Summit 2012
画面解像度の多様化
2006年7月
1280x
1024
1024x
768
1600x
1200
1400x
1050
その他
2012年1月
訪問者における画面解像度の内訳 Yuya Yamaki’s blog(http://d.hatena.ne.jp/Yamaki/)
1280x1
024
1920x1
080
1280x8
00
1366x7
68
1920x1
200
その他
Developers Summit 2012
画面の回転
Developers Summit 2012
ディスプレイの高精細化
Asus Eee Pad Transformer Prime TF700T
Acer ICONIA TAB A700
10.1インチ、1920x1200(WUXGA)
224PPI(pixels per inch)
Metroスタイルアプリの シミュレーターにおける
ディスプレイサイズと解像度
Developers Summit 2012
Metroスタイルアプリの拡大率
拡大率 = デスクトップでいうところの DPIスケーリング
Metroスタイルアプリにおける拡大率は ディスプレイのピクセル密度によって 自動的に設定される
ピクセル密度
ピクセル数 ÷ ディスプレイの物理サイズ
100%(96DPI) 150%(144DPI)
Developers Summit 2012
ピクセル密度と拡大率 ディスプレイ
サイズ GetDeviceCaps
関数 画面解像度 ピクセル 密度
拡大率 (LogicalDpi)
シミュレーター
10.6インチ 132×235mm
1366×768 約148PPI 100%(96DPI)
1920×1080 約207PPI 140%(135DPI)
2560×1440 約276PPI 180%(174DPI)
12インチ 162×258mm 1280×800 約126PPI 100%(96DPI)
23インチ 286×509mm 1920×1080 約96PPI 100%(96DPI)
27インチ 336×598mm 2560×1440 約109PPI 100%(96DPI)
Lenovo ThinkPad W510
15.6インチ 340×190mm 1920×1080 約143PPI 100%(96DPI)
Samsung 700T
11.6インチ 260×160mm 1366×768 約133PPI 100%(96DPI)
Developers Summit 2012
スケーラブルな画面を作るには
絶対配置
位置や大きさが直接指定されて決まる
相対配置(動的配置)
レイアウト属性や周りの要素との関係で 位置や大きさが決まる
絶対配置を極力行わず、相対配置とする
X座標、Y座標は基本的に設定しない
幅や高さは必要なものだけに設定
第6回 .NET中心会議『XAMLで学ぶレイアウトスキル』 http://www.atmarkit.co.jp/fdotnet/chushin/chushinmeeting_06/chushinmeeting_06_01.html
Developers Summit 2012
スケーラブルな画面を作るには
可能なものはベクターグラフィックスを使用
ビットマップ画像は拡大率ごとに用意
Metroスタイルアプリではルールに基づいた名前のファイル名を用意するだけ
<Image Source="Images/onegrape.png" />
<img src="/images/onegrape.png" />
XAML
HTML
Developers Summit 2012
まとめ
Windowsのインパクトを過小評価しない
デバイスの多様化は加速する
Windows 8はその出発点
多様化に対応できるスキルを身につければ、 それは大きなチャンスとなる
さしあたっては「タッチ」
既存アプリのタッチ対応
タッチに最適化されたUIの新規開発
Developers Summit 2012