SlideShare a Scribd company logo
1 of 45
© 2017 @nuits_jp
Blue Monkey
Architecture Overview
2017.03.14
© 2017 @nuits_jp
中村 充志 / Atsushi Nakamura
• Enterprise系アプリケーションアーキテクト
• Prism for WPFを仕事にて活用
• Xamarinを仕事にしたくて奮闘中
• Microsoft MVP Visual Studio and Developer
Technologies
• Twitter : @nuits_jp
• Blog : http://www.nuits.jp
• Company : RICOH JAPAN Corp.
2
自己紹介
© 2017 @nuits_jp
はじめに
© 2017 @nuits_jp
BlueMonkeyプロジェクトのゴール
【ゴール】
一定規模のチーム開発に耐えうる
アーキテクチャのリファレンス実装の提案
【重視しているポイント】
• テスト容易性・変更容易性の確保
• クロスプラットフォーム対応
• 特定バックエンドへの非依存
© 2017 @nuits_jp
アーキテクチャ上のキーワード
• Prism for Xamarin.Forms
• MVVM Pattern
• MVVMのM
© 2017 @nuits_jp
Prism for Xamarin.Forms
© 2017 @nuits_jp
MVVMパターンで辛くなりがちな点
Binding &
Command
Update
NotificationNotification
• 画面遷移
• 確認ダイアログ
• 選択ダイアログ
© 2017 @nuits_jp
What is Prism?
• XAML Application Framework
• Guidance
• Patterns & Practices
• Testable & Maintainable
• Open Source
• .NET Foundation
© 2017 @nuits_jp
What do you get?
• MVVM Support
• Commanding
• Messaging
• Navigation
• Page Dialog Service
• Dependency Injection
• Logging
© 2017 @nuits_jp
What do you get?
• MVVM Support
• Commanding
• Messaging
• Navigation
• Page Dialog Service
• Dependency Injection
• Logging
© 2017 @nuits_jp
What is Prism?
• XAML Application Framework
• Guidance
• Patterns & Practices
• Testable & Maintainable
• Open Source
• .NET Foundation
© 2017 @nuits_jp
MVVMパターンとは
© 2017 @nuits_jp
よくみかけるMVVMの図
Binding &
Command
Update
NotificationNotification
© 2017 @nuits_jp
MVVM is 何
© 2017 @nuits_jp
MVVM is PDS
Presentaion Domain Separation:PDS
© 2017 @nuits_jp
PDS is SoC
Separation of Concerns:SoC
Presentaion Domain Separation:PDS
© 2017 @nuits_jp
SoC Overview
Separation of Concerns:SoC
Presentaion Domain Separation:PDSInversion of Control:IoC
© 2017 @nuits_jp
よくみかけるMVVMの図
Binding &
Command
Update
NotificationNotification
© 2017 @nuits_jp
よくみかけるMVVMの図
Binding &
Command
Update
NotificationNotification
プレゼンテーション その他
© 2017 @nuits_jp
実際の割合
Binding &
Command
Update
NotificationNotification
プレゼンテー
ション
その他
© 2017 @nuits_jp
Mobile & Cross Platform開発
Modelにも
• 専門性の高い領域
• テストが難しい領域
が多数存在します
© 2017 @nuits_jp
Mobile & Cross Platformは課題の山
• プラットフォーム依存領域
• 時間
• 非同期処理
• プッシュ通知
• センサー類(位置情報、加速度、カメラ)
© 2017 @nuits_jp
Why Prism for Xamarin.Forms
• PrismはMVVMの課題だけでなく、これらの課題に対しても、ガ
イダンスを提供します
• Prismはアプリケーションを開発する上での、パターンとプラク
ティスの集合です
• そしてこれらは、テスト容易性と保守容易性を提供します
© 2017 @nuits_jp
MVVMのM
Binding &
Command
Update
NotificationNotification
プレゼンテー
ション
その他
© 2017 @nuits_jp
MVVMのM
© 2017 @nuits_jp
MVVMのMの原則
Binding &
Command
Update /
public Task Foo()
NotificationNotification
プレゼンテーション その他
1. ViewModelはModelの影(そしてまたViewはViewModelの影)
2. ModelについてViewModelが行うことは、イベントに対する反応と戻り値の
ないメソッドの呼び出ししかない事
出典:http://ugaya40.hateblo.jp/entry/model-mistake
© 2017 @nuits_jp
なぜ戻り値はTask縛りなのか?
読書中の書籍というModelがあり、ある視点から見ると目次というViewと
して表現され
別の視点から見ると本文のテキスト画面というViewとして表現される。
© 2017 @nuits_jp
MVVMのM どう整理する?
Binding &
Command
Update
NotificationNotification
プレゼンテーション その他
? ? ?
© 2017 @nuits_jp
BlueMonkeyのレイヤーアーキテクチャ
View
ViewModel
Model
© 2017 @nuits_jp
What is Usecase?
Usecase:経費を登録する
Usecaseとは、利用者にたいしてアプリ(システム)が提供する本質的な価値のこと
「それ」を終えた後、アプリ(システム)から離れてもよい単位と考えると分かりやすい
© 2017 @nuits_jp
BlueMonkeyのレイヤーアーキテクチャ
View
ViewModel
Model
【Usecase】
画面遷移間にまたがって状態を維持する
ドメインロジックをカプセル化する
• 経費を登録する
• 経費を閲覧する
• レポートを登録する
• レポートを閲覧する
【Service】
Usecaseを実現する為の、「機能」を提供する
• ExpenseService(バックエンドの通信クライ
アント)
• LoginService
• MediaService
• TimeService
© 2017 @nuits_jp
オフライン同期を考慮する
View
ViewModel
Model
UsecaseとServiceの間に
• オフライン同期
• キャッシュ
などを透過的に制御する層が欲しい。
バックエンドの実装から大きく影響を受け
るため、Usecaseに対して実装を隠蔽した
い。
要検討
© 2017 @nuits_jp
Blue monkey コンポーネント図
© 2017 @nuits_jp
BlueMonkeyコンポーネント図
cmp Component Model
BlueMonkey
ViewModelsViews Models
Services
Views ViewModels Usecases
ExpenseServices LoginService
MediaServices TimeService
Application
DroidiOS
BlueMonkey Transaction
Transaction.Unity
© 2017 @nuits_jp
BlueMonkeyコンポーネント図
cmp Component Model
BlueMonkey
ViewModelsViews Models
Services
Views ViewModels Usecases
ExpenseServices LoginService
MediaServices TimeService
Application
DroidiOS
BlueMonkey Transaction
Transaction.Unity
© 2017 @nuits_jp
BlueMonkeyコンポーネント図
cmp Component Model
BlueMonkey
ViewModelsViews Models
Services
Views ViewModels Usecases
ExpenseServices LoginService
MediaServices TimeService
Application
DroidiOS
BlueMonkey Transaction
Transaction.Unity
© 2017 @nuits_jp
BlueMonkeyコンポーネント図
cmp Component Model
BlueMonkey
ViewModelsViews Models
Services
Views ViewModels Usecases
ExpenseServices LoginService
MediaServices TimeService
Application
DroidiOS
BlueMonkey Transaction
Transaction.Unity
© 2017 @nuits_jp
BlueMonkeyコンポーネント図
cmp Component Model
BlueMonkey
ViewModelsViews Models
Services
Views ViewModels Usecases
ExpenseServices LoginService
MediaServices TimeService
Application
DroidiOS
BlueMonkey Transaction
Transaction.Unity
© 2017 @nuits_jp
BlueMonkeyコンポーネント図
cmp Component Model
BlueMonkey
ViewModelsViews Models
Services
Views ViewModels Usecases
ExpenseServices LoginService
MediaServices TimeService
Application
DroidiOS
BlueMonkey Transaction
Transaction.Unity
© 2017 @nuits_jp
BlueMonkeyコンポーネント図
cmp Component Model
BlueMonkey
ViewModelsViews Models
Services
Views ViewModels Usecases
ExpenseServices LoginService
MediaServices TimeService
Application
DroidiOS
BlueMonkey Transaction
Transaction.Unity
© 2017 @nuits_jp
Transaction?
Usecase:経費を登録する
Usecaseオブジェクトのライフサイクルを管理する仕組み
© 2017 @nuits_jp
コードを見てみましょう!
© 2017 @nuits_jp
制約事項
© 2017 @nuits_jp
現在未完了の領域
• ユーザーインターフェースへのデザインの適用
• オフライン同期、キャッシュ制御のアーキテクチャの提示
• 検索結果のページング処理
など
© 2017 @nuits_jp
Xamarin 技術同人誌 出します!
• う-13 「Xamaritans」
• 超技術書典(in ニコニコ長会議2017)でも

More Related Content

What's hot

めとべや東京5_XAML
めとべや東京5_XAMLめとべや東京5_XAML
めとべや東京5_XAML一希 大田
 
Xamarin バッドノウハウ大全
Xamarin バッドノウハウ大全Xamarin バッドノウハウ大全
Xamarin バッドノウハウ大全Yoshito Tabuchi
 
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」Yoshito Tabuchi
 
Xamarin から使う Azure
Xamarin から使う AzureXamarin から使う Azure
Xamarin から使う AzureYoshito Tabuchi
 
Realm Mobile Platform 概要
Realm Mobile Platform 概要Realm Mobile Platform 概要
Realm Mobile Platform 概要Yoshito Tabuchi
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法Yoshito Tabuchi
 
NET Standard と Xamarin
NET Standard と XamarinNET Standard と Xamarin
NET Standard と XamarinYoshito Tabuchi
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法Yoshito Tabuchi
 
Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話
Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話
Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話Daisuke Tsutsumi
 
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~Yoshito Tabuchi
 
私とXamarinと。
私とXamarinと。私とXamarinと。
私とXamarinと。Takkiiii
 
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介Yoshito Tabuchi
 
Xamarin.forms+azureで始めるモバイル開発
Xamarin.forms+azureで始めるモバイル開発Xamarin.forms+azureで始めるモバイル開発
Xamarin.forms+azureで始めるモバイル開発Tsukasa Kato
 
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~ShinichiAoyagi
 
Xamarin で今日から始めるクロスプラットフォーム開発
Xamarin で今日から始めるクロスプラットフォーム開発Xamarin で今日から始めるクロスプラットフォーム開発
Xamarin で今日から始めるクロスプラットフォーム開発友太 渡辺
 
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点Yoshito Tabuchi
 
Xamarin の概要と活用事例
Xamarin の概要と活用事例Xamarin の概要と活用事例
Xamarin の概要と活用事例Yoshito Tabuchi
 
わんくま名古屋 #38 (20160521) Xamarin入門
わんくま名古屋 #38 (20160521) Xamarin入門わんくま名古屋 #38 (20160521) Xamarin入門
わんくま名古屋 #38 (20160521) Xamarin入門Yasuhiko Yamamoto
 
Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~
Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~
Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~Tatsuji Kuroyanagi
 

What's hot (20)

めとべや東京5_XAML
めとべや東京5_XAMLめとべや東京5_XAML
めとべや東京5_XAML
 
Xamarin バッドノウハウ大全
Xamarin バッドノウハウ大全Xamarin バッドノウハウ大全
Xamarin バッドノウハウ大全
 
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
 
Xamarin から使う Azure
Xamarin から使う AzureXamarin から使う Azure
Xamarin から使う Azure
 
Realm Mobile Platform 概要
Realm Mobile Platform 概要Realm Mobile Platform 概要
Realm Mobile Platform 概要
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 
NET Standard と Xamarin
NET Standard と XamarinNET Standard と Xamarin
NET Standard と Xamarin
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 
Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話
Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話
Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話
 
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
 
私とXamarinと。
私とXamarinと。私とXamarinと。
私とXamarinと。
 
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
 
Xamarin.forms+azureで始めるモバイル開発
Xamarin.forms+azureで始めるモバイル開発Xamarin.forms+azureで始めるモバイル開発
Xamarin.forms+azureで始めるモバイル開発
 
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
 
Xamarin で今日から始めるクロスプラットフォーム開発
Xamarin で今日から始めるクロスプラットフォーム開発Xamarin で今日から始めるクロスプラットフォーム開発
Xamarin で今日から始めるクロスプラットフォーム開発
 
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
 
Xamarin の概要と活用事例
Xamarin の概要と活用事例Xamarin の概要と活用事例
Xamarin の概要と活用事例
 
わんくま名古屋 #38 (20160521) Xamarin入門
わんくま名古屋 #38 (20160521) Xamarin入門わんくま名古屋 #38 (20160521) Xamarin入門
わんくま名古屋 #38 (20160521) Xamarin入門
 
Xamarin Overview
Xamarin Overview Xamarin Overview
Xamarin Overview
 
Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~
Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~
Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~
 

Similar to Blue monkey architecture overview

製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~Fixstars Corporation
 
MvvmCross 入門
MvvmCross 入門MvvmCross 入門
MvvmCross 入門jz5 MATSUE
 
FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...
FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...
FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...New Relic
 
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT appsMAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT appsShotaro Suzuki
 
Cake php×国産!オープンソースcms「basercms」が熱い!
Cake php×国産!オープンソースcms「basercms」が熱い!Cake php×国産!オープンソースcms「basercms」が熱い!
Cake php×国産!オープンソースcms「basercms」が熱い!Ryuji Egashira
 
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformJSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformTakahiro Fujii
 
Xamarin+MVVMCross のあれこれ
Xamarin+MVVMCross のあれこれXamarin+MVVMCross のあれこれ
Xamarin+MVVMCross のあれこれShinichiAoyagi
 
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 EastiOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 Eastirgaly
 
Rubyプログラミング教育に対する取り組みと事例紹介
Rubyプログラミング教育に対する取り組みと事例紹介Rubyプログラミング教育に対する取り組みと事例紹介
Rubyプログラミング教育に対する取り組みと事例紹介Yasushi Ishikawa
 
As a service時代のitガバナンス
As a service時代のitガバナンスAs a service時代のitガバナンス
As a service時代のitガバナンス宏介 林田
 
Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)
Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)
Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)Amazon Web Services Japan
 
Cloud Foundry Summit 2017 Recap
Cloud Foundry Summit 2017 RecapCloud Foundry Summit 2017 Recap
Cloud Foundry Summit 2017 RecapShinya Sasaki
 
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
AWS における Microservices Architecture と DevOps を推進する組織と人とツールAWS における Microservices Architecture と DevOps を推進する組織と人とツール
AWS における Microservices Architecture と DevOps を推進する組織と人とツールAmazon Web Services Japan
 
今なぜサーバーレスなのか
今なぜサーバーレスなのか今なぜサーバーレスなのか
今なぜサーバーレスなのか真吾 吉田
 
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善Works Applications
 
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望Yoichi Kawasaki
 
5分で分かるselenium conference berlin 2017
5分で分かるselenium conference berlin 20175分で分かるselenium conference berlin 2017
5分で分かるselenium conference berlin 2017Toshiya Komoda
 
Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Yoshito Tabuchi
 
【VMware】jp developer-summit_2012_final_for_print
【VMware】jp developer-summit_2012_final_for_print【VMware】jp developer-summit_2012_final_for_print
【VMware】jp developer-summit_2012_final_for_printVMwareKK
 
【17-D-1】今どきのアーキテクチャを現場の立場で斬る
【17-D-1】今どきのアーキテクチャを現場の立場で斬る【17-D-1】今どきのアーキテクチャを現場の立場で斬る
【17-D-1】今どきのアーキテクチャを現場の立場で斬るDevelopers Summit
 

Similar to Blue monkey architecture overview (20)

製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
 
MvvmCross 入門
MvvmCross 入門MvvmCross 入門
MvvmCross 入門
 
FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...
FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...
FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...
 
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT appsMAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
 
Cake php×国産!オープンソースcms「basercms」が熱い!
Cake php×国産!オープンソースcms「basercms」が熱い!Cake php×国産!オープンソースcms「basercms」が熱い!
Cake php×国産!オープンソースcms「basercms」が熱い!
 
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformJSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
 
Xamarin+MVVMCross のあれこれ
Xamarin+MVVMCross のあれこれXamarin+MVVMCross のあれこれ
Xamarin+MVVMCross のあれこれ
 
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 EastiOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
 
Rubyプログラミング教育に対する取り組みと事例紹介
Rubyプログラミング教育に対する取り組みと事例紹介Rubyプログラミング教育に対する取り組みと事例紹介
Rubyプログラミング教育に対する取り組みと事例紹介
 
As a service時代のitガバナンス
As a service時代のitガバナンスAs a service時代のitガバナンス
As a service時代のitガバナンス
 
Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)
Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)
Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)
 
Cloud Foundry Summit 2017 Recap
Cloud Foundry Summit 2017 RecapCloud Foundry Summit 2017 Recap
Cloud Foundry Summit 2017 Recap
 
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
AWS における Microservices Architecture と DevOps を推進する組織と人とツールAWS における Microservices Architecture と DevOps を推進する組織と人とツール
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
 
今なぜサーバーレスなのか
今なぜサーバーレスなのか今なぜサーバーレスなのか
今なぜサーバーレスなのか
 
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
 
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
 
5分で分かるselenium conference berlin 2017
5分で分かるselenium conference berlin 20175分で分かるselenium conference berlin 2017
5分で分かるselenium conference berlin 2017
 
Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15
 
【VMware】jp developer-summit_2012_final_for_print
【VMware】jp developer-summit_2012_final_for_print【VMware】jp developer-summit_2012_final_for_print
【VMware】jp developer-summit_2012_final_for_print
 
【17-D-1】今どきのアーキテクチャを現場の立場で斬る
【17-D-1】今どきのアーキテクチャを現場の立場で斬る【17-D-1】今どきのアーキテクチャを現場の立場で斬る
【17-D-1】今どきのアーキテクチャを現場の立場で斬る
 

More from Atsushi Nakamura

Settings SyncとCodespaceで体験する新世代へのパラダイムシフト
Settings SyncとCodespaceで体験する新世代へのパラダイムシフトSettings SyncとCodespaceで体験する新世代へのパラダイムシフト
Settings SyncとCodespaceで体験する新世代へのパラダイムシフトAtsushi Nakamura
 
C#メタプログラミング概略 in 2021
C#メタプログラミング概略 in 2021C#メタプログラミング概略 in 2021
C#メタプログラミング概略 in 2021Atsushi Nakamura
 
Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖
Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖
Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖Atsushi Nakamura
 
世界一わかりやすいClean Architecture - DroidKaigiバージョン
世界一わかりやすいClean Architecture - DroidKaigiバージョン世界一わかりやすいClean Architecture - DroidKaigiバージョン
世界一わかりやすいClean Architecture - DroidKaigiバージョンAtsushi Nakamura
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean ArchitectureAtsushi Nakamura
 
世界一わかりやすいClean Architecture release-preview
世界一わかりやすいClean Architecture release-preview世界一わかりやすいClean Architecture release-preview
世界一わかりやすいClean Architecture release-previewAtsushi Nakamura
 
世界一わかりやすいClean Architecture alpha-1
世界一わかりやすいClean Architecture alpha-1世界一わかりやすいClean Architecture alpha-1
世界一わかりやすいClean Architecture alpha-1Atsushi Nakamura
 
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発Atsushi Nakamura
 
Desktop app dev strategy for .net core 3.0
Desktop app dev strategy for .net core 3.0Desktop app dev strategy for .net core 3.0
Desktop app dev strategy for .net core 3.0Atsushi Nakamura
 
継続的にテスト可能な設計を考える
継続的にテスト可能な設計を考える継続的にテスト可能な設計を考える
継続的にテスト可能な設計を考えるAtsushi Nakamura
 
継続的にテスト可能な設計を考える ベータ版
継続的にテスト可能な設計を考える ベータ版継続的にテスト可能な設計を考える ベータ版
継続的にテスト可能な設計を考える ベータ版Atsushi Nakamura
 
α版 継続的にテスト可能な設計を考える
α版 継続的にテスト可能な設計を考えるα版 継続的にテスト可能な設計を考える
α版 継続的にテスト可能な設計を考えるAtsushi Nakamura
 
App center analyticsを使い倒そう
App center analyticsを使い倒そうApp center analyticsを使い倒そう
App center analyticsを使い倒そうAtsushi Nakamura
 
Old:App center analyticsを使い倒そう
Old:App center analyticsを使い倒そうOld:App center analyticsを使い倒そう
Old:App center analyticsを使い倒そうAtsushi Nakamura
 
Xamarin.forms navigation overview
Xamarin.forms navigation overviewXamarin.forms navigation overview
Xamarin.forms navigation overviewAtsushi Nakamura
 
App center analyticsを使い倒そう
App center analyticsを使い倒そうApp center analyticsを使い倒そう
App center analyticsを使い倒そうAtsushi Nakamura
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけらAtsushi Nakamura
 
Xamarin Dev days 2 xamarin.forms ja
Xamarin Dev days 2   xamarin.forms jaXamarin Dev days 2   xamarin.forms ja
Xamarin Dev days 2 xamarin.forms jaAtsushi Nakamura
 
Enterpriseから見たXamarinの可能性
Enterpriseから見たXamarinの可能性Enterpriseから見たXamarinの可能性
Enterpriseから見たXamarinの可能性Atsushi Nakamura
 

More from Atsushi Nakamura (19)

Settings SyncとCodespaceで体験する新世代へのパラダイムシフト
Settings SyncとCodespaceで体験する新世代へのパラダイムシフトSettings SyncとCodespaceで体験する新世代へのパラダイムシフト
Settings SyncとCodespaceで体験する新世代へのパラダイムシフト
 
C#メタプログラミング概略 in 2021
C#メタプログラミング概略 in 2021C#メタプログラミング概略 in 2021
C#メタプログラミング概略 in 2021
 
Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖
Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖
Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖
 
世界一わかりやすいClean Architecture - DroidKaigiバージョン
世界一わかりやすいClean Architecture - DroidKaigiバージョン世界一わかりやすいClean Architecture - DroidKaigiバージョン
世界一わかりやすいClean Architecture - DroidKaigiバージョン
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
世界一わかりやすいClean Architecture release-preview
世界一わかりやすいClean Architecture release-preview世界一わかりやすいClean Architecture release-preview
世界一わかりやすいClean Architecture release-preview
 
世界一わかりやすいClean Architecture alpha-1
世界一わかりやすいClean Architecture alpha-1世界一わかりやすいClean Architecture alpha-1
世界一わかりやすいClean Architecture alpha-1
 
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
 
Desktop app dev strategy for .net core 3.0
Desktop app dev strategy for .net core 3.0Desktop app dev strategy for .net core 3.0
Desktop app dev strategy for .net core 3.0
 
継続的にテスト可能な設計を考える
継続的にテスト可能な設計を考える継続的にテスト可能な設計を考える
継続的にテスト可能な設計を考える
 
継続的にテスト可能な設計を考える ベータ版
継続的にテスト可能な設計を考える ベータ版継続的にテスト可能な設計を考える ベータ版
継続的にテスト可能な設計を考える ベータ版
 
α版 継続的にテスト可能な設計を考える
α版 継続的にテスト可能な設計を考えるα版 継続的にテスト可能な設計を考える
α版 継続的にテスト可能な設計を考える
 
App center analyticsを使い倒そう
App center analyticsを使い倒そうApp center analyticsを使い倒そう
App center analyticsを使い倒そう
 
Old:App center analyticsを使い倒そう
Old:App center analyticsを使い倒そうOld:App center analyticsを使い倒そう
Old:App center analyticsを使い倒そう
 
Xamarin.forms navigation overview
Xamarin.forms navigation overviewXamarin.forms navigation overview
Xamarin.forms navigation overview
 
App center analyticsを使い倒そう
App center analyticsを使い倒そうApp center analyticsを使い倒そう
App center analyticsを使い倒そう
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
 
Xamarin Dev days 2 xamarin.forms ja
Xamarin Dev days 2   xamarin.forms jaXamarin Dev days 2   xamarin.forms ja
Xamarin Dev days 2 xamarin.forms ja
 
Enterpriseから見たXamarinの可能性
Enterpriseから見たXamarinの可能性Enterpriseから見たXamarinの可能性
Enterpriseから見たXamarinの可能性
 

Blue monkey architecture overview

Editor's Notes

  1. BlueMonkeyはXamarin.Formsを利用したアプリケーションです。 このため、MVVMパターンを採用しています。
  2. Xamarin.Android で始めるクロスプラットフォームモバイルアプリ開発 できるXamarin.Mac Prism for Xamarin.Forms入門と次の門 開発者のためのXamarin関連リポジトリ集