デスクトップアプリ開発者が押さえておくべきwindows 8 時代の変革
DESCRIPTION
Developers Summit 2012 kansai 【C-4】TRANSCRIPT
Developers Summit 2012
八巻 雄哉 グレープシティ株式会社
デベロッパーツールエバンジェリスト
C-4
デスクトップアプリ開発者が 押さえておくべき Windows 8 時代の変革
Developers Summit 2012 Kansai
BUILD2011 基調講演より
• Windows 7よりさらによくなる
Windows 8では、Windows 7で動作していたものがすべて動く
• Windowsをチップセットからエクスペリエンスまで再考する
新しく幅広い「可能性、シナリオ、フォームファクター」
2
www.buildwindows.com
Windows 8
Developers Summit 2012 Kansai
VB6 on Windows 8
Windows Vista、Windows Server 2008、Windows 7、および Windows 8 に対する Visual Basic 6.0 のサポートに関する声明 http://msdn.microsoft.com/ja-jp/vstudio/ms788708.aspx
VB6 ランタイムは Windows 8 のサポート有効期間中はOSに同梱される形で出荷され、サポートされます。 Visual Basic 6.0 ランタイム ファイルは今後も 32 ビットのみであり、すべてのコンポーネントは 32 ビット アプリケーション プロセスでホストされている必要があります。 開発者の方は、Windows 7 の場合と同様のサポートが Windows 8 についても受けられると考えていただいてかまいません。
3
Developers Summit 2012 Kansai
デスクトップで変わること
① スタートメニュー
• メニュー ⇒ スクリーン
② デスクトップテーマ
• Aero ⇒ ???(名称不明)
4
Developers Summit 2012 Kansai
スタート メニュー/スクリーン
Windows 7 Windows 8
5
Developers Summit 2012 Kansai
デスクトップテーマ
Windows 7 Windows 8
6
Developers Summit 2012 Kansai
IME入力方式保持単位の変更
7
アプリケーション毎→ユーザー単位
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
ソフトウェアは 変わらずとも ハードウェアが 変わる
Developers Summit 2012 Kansai
ハイブリッド型PC
9
Surface TM
Developers Summit 2012 Kansai
パソコン = ノートPC
世界市場全体
61%
米国コンシューマ市場
10
76%
Building Windows 8の記事より
Developers Summit 2012 Kansai
どちらを購入しますか? スレートとしてもノートとしても
使えるPC ノートとしてしか
使えないPC
11
ハードウェアメーカーはタッチ対応を迫られる
Developers Summit 2012 Kansai
ハードウェアの変革
① タッチ可能なデバイスの普及
② ディスプレイの高精細化
12
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
タッチ
Developers Summit 2012 Kansai
Building Windows 8の記事より
数十年後 (おそらくはもっと早く)、 私たちはこの過渡期を振り返り、
「ねえ、PC の画面がタッチ操作に 対応していなかったころを覚えてる?
今考えると変だよね」
などと言い合うことになるでしょう。
14
Developers Summit 2012 Kansai
Building Windows 8の記事より
「マウスは良いアイデアだが、ビジネス ユーザーの 役に立つかどうかは疑わしい」 (George Vinall、PC Week、1984 年 4 月 24 日)
「使うのはとても楽しかったが、ビジネスの視点から 考えると生産性に疑問を持たざるを得ない」 (George Vinall、PC Week、1984 年 4 月 24 日)
「会社役員のような特定のターゲット層にとって、 マウスはコンピューターを使いやすく馴染みやすい ものにしてくれるのだろうか。答えはノーだ」 (Computerworld、1983 年 10 月 31 日)
15
Developers Summit 2012 Kansai
第三次ユーザインターフェース革命
16
CUI(Character User Interface)
GUI(Graphical User Interface)
NUI(Natural User Interface)
Touch User Interface
Tangible User Interface
Perceptual User Interface
Developers Summit 2012 Kansai
異なる操作方法の共存
Webブラウザの「前のページに戻る」
キーボード
マウス
17
+
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
デスクトップアプリの タッチ対応
Developers Summit 2012 Kansai
デスクトップにタッチは必要?
デスクトップアプリが タッチに対応する必要あるの?
本当は必要ないはず
タッチ対応はWindowsストアアプリ (旧称:Metroスタイルアプリ)が理想
でも不可抗力的に タッチされてしまうのでは?
19
Developers Summit 2012 Kansai
レガシーサポート
ジェスチャ マップ先 生成されるメッセージ
タッチ マウスの左クリック WM_LBUTTONDOWN WM_LBUTTONUP
パン スクロールホイールの使用
WM_VSCROLL WM_HSCROLL
プレスアンドホールド マウスの右クリック WM_RBUTTONDOWN WM_RBUTTONUP
ズーム
Ctrlキーを押しながら マウス ホイールを 回転させて スクロールする操作
lParam で MK_CONTROLが 設定された WM_MOUSEWHEEL
20
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
DEMO
レガシーサポート
21 21
Developers Summit 2012 Kansai
対応が必要となる操作
① マウスカーソルの位置に依存した操作
例:マウスホバーでドロップダウン
② BUTTONDOWNとBUTTONUPを 分けて処理する必要がある操作
例:マウスボタン押しっぱなし操作
③ マウス用の寸法でタッチ不能
例:スライダーのつまみをドラッグ
22
Developers Summit 2012 Kansai
小さすぎてタッチ不能の例
23
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
DEMO
レイアウトを保ったまま サイズを確保する例
Developers Summit 2012 Kansai
Office 2013 Preview
通常 タッチモード
25
1.18倍 1.5倍
Developers Summit 2012 Kansai
Office 2013 Preview
マウスクリック タッチ
26
1.8倍
Developers Summit 2012 Kansai
ご期待ください
グレープシティでは、
Windowsフォーム
WPF
ASP.NET Webフォーム
の主力製品において、Windows 8における
タッチ操作への対応を
予定しています
27
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
高精細化
Developers Summit 2012 Kansai
ディスプレイの高精細化
3.5インチ、960×640(DoubleVGA)、326PPI iPhone 4S
4.8インチ、1280×720、306PPI Samsung ATIV S(Windows Phone 8)
9.7インチ、2,048×1,536、264PPI 新しいiPad
10.1インチ、1,920×1,200(WUXGA)、224PPI Asus Eee Pad Transformer Prime TF700T Acer ICONIA TAB A700
10.6インチ、1,920×1,080(FHD)、208PPI Microsoft Surface for Windows 8 Pro
15インチ、2,880×1,800、220PPI MacBook Pro(Retinaディスプレイモデル)
29
Developers Summit 2012 Kansai
Intel: Retina laptop, desktop displays coming in 2013
30
http://liliputing.com/2012/04/intel-retina-laptop-desktop-displays-coming-in-2013.html
Developers Summit 2012 Kansai
Intel-Prognose:PC’s Leading the Race to 4K
31
http://www.3dcenter.org/news/intel-prognose-4k-monitore-ab-2013-im-premium-segment-ab-2015-im-mainstream-segment
Developers Summit 2012 Kansai
約96PPI 23インチ、FHD(1,920×1,080)
32
768ピクセル
1024ピクセル
Developers Summit 2012 Kansai
約128PPI 23インチ、WQHD(2,560×1,440)
33
768ピクセル
1024ピクセル
Developers Summit 2012 Kansai
約192PPI 23インチ、QFHD(3,840×2,160)
34
768ピクセル
1024ピクセル
Developers Summit 2012 Kansai
Windows 7
35
15.6インチ 340×190mm 1920×1080 約143PPI
Developers Summit 2012 Kansai
Windows 8
36
15.6インチ 340×190mm 1920×1080 約143PPI
Developers Summit 2012 Kansai
XP形式のスケーリングか否か
XP形式のスケーリング:On XP形式のスケーリング:Off
37
Developers Summit 2012 Kansai
XP形式のスケーリングを使用しない
DPI仮想化によるスケーリング
一度96DPI相当で画面表示領域外に描画し、それをDWMがシステムのDPIに合わせて ビットマップ的に拡大して表示
スケーリングに全く対応していないアプリ でも、レイアウトはくずれない
ビットマップ的な拡大のため、 ぼやけた印象の表示となる
38
Developers Summit 2012 Kansai
カスタムサイズ変更オプション
125%以下 126%以上
39
XP形式のスケーリング:Onが既定 XP形式のスケーリング:Offが既定
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
DPIスケーリングが 変わるとどうなるのか?
Windowsフォームの場合
Developers Summit 2012 Kansai
AutoScaleModeプロパティ
41
FontかDpiであれば、 各コントロールのスケール処理が実行される
Developers Summit 2012 Kansai
Windowsフォームのスケール処理
設計時のフォントサイズ/DPIと 実行時のフォントサイズ/DPIを比較し、 その比率をもとにスケール処理が行われる
異なるシステムフォントサイズ/DPI設定の 環境でプロジェクトを共有できない
スケール処理はフォームの初回読込時の一度きり
動的に位置やサイズを設定する際には、 比率を乗算してやる必要がある
スケール処理は各コントロールの実装に依存
42
Developers Summit 2012 Kansai
ご期待ください
グレープシティでは、
Windowsフォーム
WPF
ASP.NET Webフォーム
の主力製品において、Windows 8における
高DPIへの対応を
予定しています
43
Developers Summit 2012 Kansai
まとめ
デスクトップにおける Windows 8時代の変革
タッチ可能なデバイスの普及
ディスプレイの高精細化
44