Recommended
PPTX
XAML + C#で開発するときのVisual Studio 2013(とBlend)の便利機能
PPTX
Blend for visual studio 2013の新機能
PPTX
PPTX
PPTX
PDF
めとべや東京10 Universal Windows Platform appの新しいバインディング
PPTX
Visual studio 2013 Overview
PPTX
PPTX
PDF
Visual Studio + xamarin で始めるモバイル アプリ開発
PPTX
Windows アプリケーション開発はじめに ~ Windows アプリケーション開発初学者の方向けVisual Studio を使ったアプリケーショ...
PDF
高品質な Teams アプリを開発するためのポイント
PPTX
Win/Mac/Android/iOS向けクロスプラットフォーム開発にXamarinがうまくハマりそうだった話
PDF
Prism + ReactiveProperty入門
KEY
PDF
無償版Visual StudioでいろいろWeb開発
PPTX
PDF
JavaScriptと共に歩いて行く決意をした君へ
PDF
Visual Studio 2015 リリース記念 勉強会 universal windows platform app
PDF
PPTX
PPTX
PDF
JS で Bot つくろうぜ! ~刮目せよ!、これがMSのBot Framewok だ!!~
PDF
PPTX
20140531 めとべや東京4 ユニバーサル アプリ入門
PDF
20150530 めとべや東京8 universal windows platform appの画面開発
PPTX
Why prism for xamarin.forms
PPTX
PPTX
PPTX
More Related Content
PPTX
XAML + C#で開発するときのVisual Studio 2013(とBlend)の便利機能
PPTX
Blend for visual studio 2013の新機能
PPTX
PPTX
PPTX
PDF
めとべや東京10 Universal Windows Platform appの新しいバインディング
PPTX
Visual studio 2013 Overview
PPTX
What's hot
PPTX
PDF
Visual Studio + xamarin で始めるモバイル アプリ開発
PPTX
Windows アプリケーション開発はじめに ~ Windows アプリケーション開発初学者の方向けVisual Studio を使ったアプリケーショ...
PDF
高品質な Teams アプリを開発するためのポイント
PPTX
Win/Mac/Android/iOS向けクロスプラットフォーム開発にXamarinがうまくハマりそうだった話
PDF
Prism + ReactiveProperty入門
KEY
PDF
無償版Visual StudioでいろいろWeb開発
PPTX
PDF
JavaScriptと共に歩いて行く決意をした君へ
PDF
Visual Studio 2015 リリース記念 勉強会 universal windows platform app
PDF
PPTX
PPTX
PDF
JS で Bot つくろうぜ! ~刮目せよ!、これがMSのBot Framewok だ!!~
PDF
PPTX
20140531 めとべや東京4 ユニバーサル アプリ入門
PDF
20150530 めとべや東京8 universal windows platform appの画面開発
PPTX
Why prism for xamarin.forms
PPTX
Similar to Prism for windows runtime入門
PPTX
PPTX
PPTX
PDF
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
PPTX
PPTX
Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~
PPTX
20140322 mvvm crossforwindowsstoreapps
PDF
RIAアーキテクチャー研究会 第3回 セッション4 Mvpvm pattern
PPTX
PPTX
Building Silverlight Large Scale Application Using MVVM
PDF
Windows ストア lob アプリ開発のためのガイダンスとフレームワークのご紹介 rev
PDF
Silverlight to Next オンライン セミナー
PPTX
PDF
Xamarin.Forms アプリケーション 設計パターン
PDF
Metroアプリケーションのwin8/wp7の効率的ソース運用を考える
PDF
Efsta cod2012 master_for_slideshare
PDF
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
PPTX
Blue monkey architecture overview
PPTX
Windows 8.1 におけるストア ビジネスアプリの設計と開発
PDF
XAML&Application Platform ~これまでとこれから~
More from 一希 大田
PDF
Windows 10 対応のデスクトップアプリを 作る技術(事前公開版)
PDF
Azure Static Web Apps を試してみた!
PDF
PDF
PDF
Visual Studio 2019 の個人的なお勧め機能(発表時点)
PDF
Visual studio 2019 updates pickup!
PDF
.NET 7 での ASP.NET Core Blazor の新機能ピックアップ
PDF
PDF
ペッパソン東の陣 Microsoft 提供 API のご紹介
PDF
.NET Core 3.0 + Windows 10 で WPF 開発
PDF
はじめての HoloLens セッションの集大成お見せします!
PDF
Visual Studio 2019 の個人的なお勧め機能
PDF
Windows 10 対応のデスクトップアプリを作る技術(事前公開版v2)
PPTX
PPTX
.NET 5 and Windows app dev
PDF
スマートスピーカーのバックエンドでAzure を使う方法
PPTX
Visual Studio App center 概要
PDF
WPF on .NET Core 3.1 で Windows 10 アプリ開発
PDF
Windows 10 に対応した デスクトップ アプリを作る技術(事前公開版 v2)
PDF
事前公開版 Windows 10 に対応したデスクトップ アプリを作る技術 v1
Prism for windows runtime入門 1. 2. 自己紹介
大田一希
– Microsoft MVP for ClientAppDev 2011/07-2014/06
– 富士通アドバンストエンジニアリング
お仕事は「Java EE6」、Windows 8
– Twitter: @okazuki
– ブログ:かずきのBlog@hatena
http://d.hatena.ne.jp/okazuki
本書いてます
– Windows 8 ストア アプリ開発入門
– Windows ストア アプリ開発のレシピ110
3. 4. 5. 6. 7. Prism
patterns & practices チームの作ってるXAML系 platform
の開発を行うためのライブラリ
– Prism 4.1
WPF 4.0, Silverlight 5 and Windows Phone 7.1
– 複合型アプリケーションの作成を目的
– 画面にRegionと呼ばれる領域を定義して、そこに色んなところから画面を流し込む
– モジュール間の連携, DIコンテナとの連携, etc…
– 途中からMVVMパターンをサポート
– よくも悪くも複雑化…
– Prism for WinRT
Windows ストア アプリのためのPrism
– シンプルにMVVM+現在のWindows Runtimeに足りない部分を補う
8. Prism for WinRT
MVVMパターンのサポート
– ページ(View)とViewModelのマッピング機能
– ViewModelでのページのライフサイクルへ対応
– ICommandインターフェースの実装DelegateCommandを提供
非同期なメソッドからのDelegateCommandの作成とかしてくれる
Windows Runtime固有の機能のサポート
– ページ遷移履歴の保存
– サスペンド時の状態保存
– フライアウト
一般的なアプリに必要な機能のサポート
– 入力値の検証
– 疎結合な連携のためのイベントの発行と購読(EventAggregator)
9. MVVMサポート
VisualStateAwarePageクラス(View)
– Prism for WinRTの画面用基本クラス(LayoutAwarePageのようなもの)
ViewModelクラス(ViewModel)
– ページ遷移のコールバックメソッド
– NavigationServiceを使うことでViewModelで画面遷移の処理が可能に
– サスペンド時に状態の一時保存と停止状態からの状態復元
BindableBase(Model)
– INotifyPropertyChangedの実装
ValidatableBindableBase(Model)
– プロパティの値の検証機能の実装
ViewModelLocatorクラス(ViewとViewModelの接続)
– Viewのクラス名から自動的にViewModelを生成してDataContextに設定
10. 11. Prism for WinRTの起動処理
MvvmAppBaseクラス
– INavigationServiceの初期化
画面遷移
– ISessionStateServiceの初期化
セッションデータの保存
– IFlyoutServiceの初期化
何故か標準でサポートされてないフライアウト
– 利用者はOnLaunchApplicationメソッドをオーバーライドしてお膳立て
された状態で開発がスタートできる
12. Prism for WinRTとは まとめ
MVVM + Windows ストア アプリ固有機能 + α =
Prism for WinRT
MVVM
– ViewModel, DelegateCommand, ViewModelLocator
ストアアプリ固有機能
– 画面遷移
– サスペンド時の処理への対応
– 何故か標準でサポートされてないフライアウト
α
– 入力値の検証
– ゆるふわな相互通信(EventAggregator今回は時間の都合で…)
13. 14. 15. テンプレート
Prism for Windows Runtime Templates
http://visualstudiogallery.msdn.microsoft.com/e8664
9de-2b5e-45bb-bc65-5c6499b92b34
– 拡張機能と更新プログラムからPrismで検索でもOK
16. 17. アイテムテンプレート(1/2)
アイテムテンプレート
– Flyout View (Prism), Flyout View Model (Prism)
フライアウト用のViewとViewModelのテンプレート
– Model (Prism)
値の検証を行う機能を持ったクラス
– Page View (Prism), View Model (Prism)
ViewModelと接続されたページとViewModelのテンプレート
18. アイテムテンプレート(2/2)
アイテムテンプレート
– PubSubEvent (Prism)
EventAggregatorで発行/購読できるイベントを作る
– Search Contract (Prism)
検索結果のページ+MvvmAppBaseのOnSearchApplicationをオーバーライド
– UserControl View (Prism)
普通のユーザーコントロール。存在意義がわからない。
19. 20. 21. 22. 規約のカスタマイズも可能
画面名のクラス名の規約
– MvvmAppBaseクラスのType GetPageType(string pageToken)を
オーバーライド
ViewModelのクラス名の規約
– ViewModelLocatorのSetDefaultViewTypeToViewModelResolver(
Func<Type, Type> viewTypeToViewModelTypeResolver)で設定
規約ではなく個別設定も可能
– デフォルトのコンストラクタ以外でViewModelをインスタンス化したい場
合はこれがお手軽
– ViewModelLocator.Register(
typeof(MainPage).ToString(),
() => new MainViewModel(NavigationService));
23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. Prism for Windows Runtime
MVVM + WinRT + α
– ViewModel, VisualStateAwarePage, DelegateCommand, Flyout,
etc...
プロジェクトテンプレート/アイテムテンプレートを使おう
– Prism for Windows Runtime Templates
http://visualstudiogallery.msdn.microsoft.com/e86649de-2b5e-
45bb-bc65-5c6499b92b34
標準のテンプレートよりはいけてる
– Enterprise向けだけじゃなく、一般向けでも使いやすい。
36. 37. おまけ
Windows 8.1 Previewでは…
– 検索コントラクトの動きちげー
– 画面のスナップ・フィル・ポートレイト・ランドスケープがなくなった
(幅と高さとかから自分で最適な見た目を制御するっぽい)
– そもそもプロジェクトテンプレートの中身がちげー
– APIめっちゃ増えとる
キャッチアップしてBlogりたいのでよろしくお願いします
38. 参考情報
patterns & practices: Prism for the Windows Runtime
– http://prismwindowsruntime.codeplex.com/
Developing a Windows Store business app using C#,
XAML, and Prism for the Windows Runtime
– http://msdn.microsoft.com/en-
us/library/windows/apps/xx130643.aspx