Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Why prism for xamarin.forms

947 views

Published on

「JXUGC #18 Xamarin.Forms & Prism & Azure Mobile Apps を使いこなそう」の発表資料です

Published in: Engineering
  • We called it "operation mind control" - as we discovered a simple mind game that makes a girl become obsessed with you. (Aand it works even if you're not her type or she's already dating someone else) Here's how we figured it out... ★★★ http://t.cn/AijLRbnO
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • The Scrambler Unlock Her Legs | 95% Off by Bobby Rio-Rob Judge? ♣♣♣ http://ishbv.com/unlockher/pdf
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • ♣♣ 10 Easy Ways to Improve Your Performance in Bed... ▲▲▲ https://tinyurl.com/rockhardxx
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • ➤➤ How Long Does She Want You to Last? Here's the link to the FREE report ●●● https://tinyurl.com/rockhardxx
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • ♣♣ 10 Easy Ways to Improve Your Performance in Bed... ◆◆◆ http://ishbv.com/rockhardx/pdf
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Why prism for xamarin.forms

  1. 1. © 2016 @nuits_jp Why Prism for Xamarin.Forms 2016.10.28 JXUGC #18
  2. 2. © 2016 @nuits_jp 中村 充志 / Atsushi Nakamura • Enterprise系アプリケーションアーキテクト • Prism for WPFを仕事にて活用 • Xamarinを仕事にしたくて奮闘中 • Twitter : @nuits_jp • Blog : http://www.nuits.jp • Company : RICOH JAPAN Corp. 2 自己紹介
  3. 3. © 2016 @nuits_jp 次のふたつを理解していただくこと • なぜPrismを使うべきか? • だれがPrismを使うべきか? 3 Today’s Goal
  4. 4. © 2016 @nuits_jp • Introduction • What is Prism? & What do you get? • Why Prism for Xamarin.Forms? • DEMO 4 Agenda
  5. 5. © 2016 @nuits_jp Agenda • Introduction • What is Prism? & What do you get? • Why Prism for Xamarin.Forms? • DEMO 5
  6. 6. © 2016 @nuits_jp • Xamarin.Formsをつかう → MVVMパターンにしよう → 素のままだとつらい! Introduction
  7. 7. © 2016 @nuits_jp 7 MVVM Patternで、辛くなりやすいところ Binding & Command Update NotificationNotification • 画面遷移 • 確認ダイアログ • 選択ダイアログ
  8. 8. © 2016 @nuits_jp • Xamarin.Formsをつかう → MVVMパターンにしよう → 素のままだとつらい! → MVVM支援ライブラリつかいたい! Prism or MVVM Light Toolkit? 何つかおう?
  9. 9. © 2016 @nuits_jp 9 Who is He?
  10. 10. © 2016 @nuits_jp 10 God has told us
  11. 11. © 2016 @nuits_jp 完 11
  12. 12. © 2016 @nuits_jp 12 Prism or MVVM Light Toolkit
  13. 13. © 2016 @nuits_jp Agenda • Introduction • What is Prism? & What do you get? • Why Prism for Xamarin.Forms? • DEMO 13
  14. 14. © 2016 @nuits_jp • XAML Application Framework • Guidance • Patterns & Practices • Testable & Maintainable • Open Source • .NET Foundation 14 What is Prism?
  15. 15. © 2016 @nuits_jp • MVVM Support • Commanding • Messaging • Navigation • Page Dialog Service • Dependency Injection • Logging 15 What do you get?
  16. 16. © 2016 @nuits_jp Agenda • Introduction • What is Prism? & What do you get? • Why Prism for Xamarin.Forms? • DEMO 16
  17. 17. © 2016 @nuits_jp 17 Prism & MVVM Light Toolkit
  18. 18. © 2016 @nuits_jp 18 Prism & MVVM Light Toolkit
  19. 19. © 2016 @nuits_jp • MVVM Support • Commanding • Messaging • Navigation • Page Dialog Service • Dependency Injection • Logging 19 What do you get?
  20. 20. © 2016 @nuits_jp • XAML Application Framework • Guidance • Patterns & Practices • Testable & Maintainable • Open Source • .NET Foundation 20 What is Prism?
  21. 21. © 2016 @nuits_jp 21 よく見かけるMVVMの図 Binding & Command Update NotificationNotification プレゼンテー ション その他
  22. 22. © 2016 @nuits_jp 22 実際の割合 Binding & Command Update NotificationNotification プレゼンテー ション その他
  23. 23. © 2016 @nuits_jp 23 Viewが厚くて凄い例① @masatoru氏作 SkiaSharpで自力で縦組View
  24. 24. © 2016 @nuits_jp 24 Viewが厚くて凄い例② @omanuke氏作 SkiaSharpで自力描画している株式チャート
  25. 25. © 2016 @nuits_jp 25 実際の割合 Binding & Command Update NotificationNotification プレゼンテー ション その他
  26. 26. © 2016 @nuits_jp Modelにも • 専門性の高い領域 • テストが難しい領域 が多数存在します モバイル&クロスプラットフォーム開発
  27. 27. © 2016 @nuits_jp • プラットフォーム依存領域 • 時間 • 非同期処理 • プッシュ通知 • センサー類(位置情報、加速度、カメラ) モバイルクロスプラットフォームは課題の 山
  28. 28. © 2016 @nuits_jp • PrismはMVVMの課題だけでなく、これらの課 題に対しても、ガイダンスを提供します • Prismはアプリケーションを開発する上での、 パターンとプラクティスの集合です • そしてこれらは、テスト容易性と保守容易性 を提供します Why Prism for Xamarin.Forms
  29. 29. © 2016 @nuits_jp 「MVVM初めてやるけど、Prismって難しそう」 という人ほど、使うべきです。 だれがPrismを使うべきか?
  30. 30. © 2016 @nuits_jp #DEMO 30
  31. 31. © 2016 @nuits_jp • 素のXamarin.Formsのみで作ったアプリを Prismを適用してリファクタリングします • TDD(Test First)でいきます • TestではMoqを利用します • ReSharper先生最高! デモ概要
  32. 32. © 2016 @nuits_jp 32 デモアプリクラス構成 class Class Model Xamarin.Forms ModelViewModelView UWP Android iOSPCL MainPage MainPageViewModel TextSpeachPage TextSpeachPageViewModel «interface» ITextSpeachService TextSpeachService TextSpeachService TextSpeachServiceDependencyServiceNavigationPage «instantiate» «instantiate»«use» «use» «instantiate»
  33. 33. © 2016 @nuits_jp #DEMO 33
  34. 34. © 2016 @nuits_jp https://github.com/nuitsjp/WhyPrismSession このあとすぐ資料をTwitterに案内します。 dotsのイベントページへの紐づけもしますので、 何れかからご覧ください。 デモコードのリポジトリ
  35. 35. © 2016 @nuits_jp いい入門サイトをたまたま知ってます! 【Xamarin】Prism.Forms入門 http://www.nuits.jp/entry/2016/08/22/173858 Xamarin関わらず多数の日本語のPrism情報があります Prism自習用リポジトリ https://github.com/runceel/PrismEdu 35 まとめ
  36. 36. © 2016 @nuits_jp #Xamarinはいいぞ 36
  37. 37. © 2016 @nuits_jp #Prismもいいぞ 37

×