Submit Search
Blue monkey architecture overview
Download as PPTX, PDF
1 like
1,574 views
A
Atsushi Nakamura
Blue monkey architecture overview
Engineering
Read more
1 of 45
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
More Related Content
PPTX
Why prism for xamarin.forms
Atsushi Nakamura
PPTX
いまさら学ぶMVVMパターン
Yuta Matsumura
PPTX
Xamarin の救世主 Unity !
Tatsuji Kuroyanagi
PDF
Xamarinの歩き方
Yoshito Tabuchi
PDF
20171202 Xamarinの歩き方
Yoshito Tabuchi
PPTX
C++からC#まで Visual Studio 縛り (で死ぬ実験)
Takashi Kawasaki
PPTX
Win/Mac/Android/iOS向けクロスプラットフォーム開発にXamarinがうまくハマりそうだった話
Takuya Kikuchi
PDF
Visual Studio + xamarin で始めるモバイル アプリ開発
インフラジスティックス・ジャパン株式会社
Why prism for xamarin.forms
Atsushi Nakamura
いまさら学ぶMVVMパターン
Yuta Matsumura
Xamarin の救世主 Unity !
Tatsuji Kuroyanagi
Xamarinの歩き方
Yoshito Tabuchi
20171202 Xamarinの歩き方
Yoshito Tabuchi
C++からC#まで Visual Studio 縛り (で死ぬ実験)
Takashi Kawasaki
Win/Mac/Android/iOS向けクロスプラットフォーム開発にXamarinがうまくハマりそうだった話
Takuya Kikuchi
Visual Studio + xamarin で始めるモバイル アプリ開発
インフラジスティックス・ジャパン株式会社
What's hot
(20)
PPTX
めとべや東京5_XAML
一希 大田
PDF
Xamarin バッドノウハウ大全
Yoshito Tabuchi
PDF
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
Yoshito Tabuchi
PDF
Xamarin から使う Azure
Yoshito Tabuchi
PDF
Realm Mobile Platform 概要
Yoshito Tabuchi
PDF
Xamarin概要と活用方法
Yoshito Tabuchi
PDF
NET Standard と Xamarin
Yoshito Tabuchi
PDF
Xamarin概要と活用方法
Yoshito Tabuchi
PPTX
Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話
Daisuke Tsutsumi
PDF
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Yoshito Tabuchi
PPTX
私とXamarinと。
Takkiiii
PDF
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
Yoshito Tabuchi
PDF
Xamarin.forms+azureで始めるモバイル開発
Tsukasa Kato
PPT
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
ShinichiAoyagi
PDF
Xamarin で今日から始めるクロスプラットフォーム開発
友太 渡辺
PDF
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
Yoshito Tabuchi
PDF
Xamarin の概要と活用事例
Yoshito Tabuchi
PDF
わんくま名古屋 #38 (20160521) Xamarin入門
Yasuhiko Yamamoto
PPTX
Xamarin Overview
Madoka Chiyoda
PPTX
Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~
Tatsuji Kuroyanagi
めとべや東京5_XAML
一希 大田
Xamarin バッドノウハウ大全
Yoshito Tabuchi
Xamarin 20141212 モバイルカフェスペシャル 「C#で作るiOS/Androidのクロスプラットフォームスマホアプリ開発」
Yoshito Tabuchi
Xamarin から使う Azure
Yoshito Tabuchi
Realm Mobile Platform 概要
Yoshito Tabuchi
Xamarin概要と活用方法
Yoshito Tabuchi
NET Standard と Xamarin
Yoshito Tabuchi
Xamarin概要と活用方法
Yoshito Tabuchi
Xamarinを企業向けアプリ開発の プラットフォームとして選定し 実際にアプリをリリースした話
Daisuke Tsutsumi
Xamarin 概要~Windows Embedded の業務用端末から Android へのシームレスな移行~
Yoshito Tabuchi
私とXamarinと。
Takkiiii
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
Yoshito Tabuchi
Xamarin.forms+azureで始めるモバイル開発
Tsukasa Kato
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
ShinichiAoyagi
Xamarin で今日から始めるクロスプラットフォーム開発
友太 渡辺
モバイル向けクロスプラットフォーム開発ツール Xamarin の概要とその利点
Yoshito Tabuchi
Xamarin の概要と活用事例
Yoshito Tabuchi
わんくま名古屋 #38 (20160521) Xamarin入門
Yasuhiko Yamamoto
Xamarin Overview
Madoka Chiyoda
Xamarin で Prism を使いたい! ~「正式対応」 まで待てない人のための Prism 利用 Tips~
Tatsuji Kuroyanagi
Ad
Similar to Blue monkey architecture overview
(20)
PPTX
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
Fixstars Corporation
PDF
MvvmCross 入門
jz5 MATSUE
PDF
FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...
New Relic
PDF
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
Shotaro Suzuki
PDF
Cake php×国産!オープンソースcms「basercms」が熱い!
Ryuji Egashira
PPTX
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
Takahiro Fujii
PPTX
Xamarin+MVVMCross のあれこれ
ShinichiAoyagi
PDF
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
irgaly
PDF
FinOpsGreenITについて学んでみた_2024/07/11(木)開催資料
ariariari1112
PDF
Rubyプログラミング教育に対する取り組みと事例紹介
Yasushi Ishikawa
PDF
As a service時代のitガバナンス
宏介 林田
PDF
Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)
Amazon Web Services Japan
PDF
Cloud Foundry Summit 2017 Recap
Shinya Sasaki
PDF
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
Amazon Web Services Japan
PDF
今なぜサーバーレスなのか
真吾 吉田
PDF
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
Works Applications
PPTX
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
Yoichi Kawasaki
PDF
5分で分かるselenium conference berlin 2017
Toshiya Komoda
PDF
Xamarin 概要 2017/01/15
Yoshito Tabuchi
PDF
【VMware】jp developer-summit_2012_final_for_print
VMwareKK
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
Fixstars Corporation
MvvmCross 入門
jz5 MATSUE
FutureStack Tokyo 19 -[パートナー講演]アマゾン ウェブ サービス ジャパン株式会社: New Relicを活用したAWSへのアプリ...
New Relic
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
Shotaro Suzuki
Cake php×国産!オープンソースcms「basercms」が熱い!
Ryuji Egashira
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
Takahiro Fujii
Xamarin+MVVMCross のあれこれ
ShinichiAoyagi
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
irgaly
FinOpsGreenITについて学んでみた_2024/07/11(木)開催資料
ariariari1112
Rubyプログラミング教育に対する取り組みと事例紹介
Yasushi Ishikawa
As a service時代のitガバナンス
宏介 林田
Game Development on AWS (ゲーム開発環境を向上させるためのAWS活用術)
Amazon Web Services Japan
Cloud Foundry Summit 2017 Recap
Shinya Sasaki
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
Amazon Web Services Japan
今なぜサーバーレスなのか
真吾 吉田
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
Works Applications
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
Yoichi Kawasaki
5分で分かるselenium conference berlin 2017
Toshiya Komoda
Xamarin 概要 2017/01/15
Yoshito Tabuchi
【VMware】jp developer-summit_2012_final_for_print
VMwareKK
Ad
More from Atsushi Nakamura
(19)
PPSX
Settings SyncとCodespaceで体験する新世代へのパラダイムシフト
Atsushi Nakamura
PPTX
C#メタプログラミング概略 in 2021
Atsushi Nakamura
PPTX
Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖
Atsushi Nakamura
PPTX
世界一わかりやすいClean Architecture - DroidKaigiバージョン
Atsushi Nakamura
PPTX
世界一わかりやすいClean Architecture
Atsushi Nakamura
PPTX
世界一わかりやすいClean Architecture release-preview
Atsushi Nakamura
PPTX
世界一わかりやすいClean Architecture alpha-1
Atsushi Nakamura
PPTX
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Atsushi Nakamura
PPTX
Desktop app dev strategy for .net core 3.0
Atsushi Nakamura
PPTX
継続的にテスト可能な設計を考える
Atsushi Nakamura
PPTX
継続的にテスト可能な設計を考える ベータ版
Atsushi Nakamura
PPTX
α版 継続的にテスト可能な設計を考える
Atsushi Nakamura
PDF
App center analyticsを使い倒そう
Atsushi Nakamura
PPTX
Old:App center analyticsを使い倒そう
Atsushi Nakamura
PPTX
Xamarin.forms navigation overview
Atsushi Nakamura
PPTX
App center analyticsを使い倒そう
Atsushi Nakamura
PPTX
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
PPTX
Xamarin Dev days 2 xamarin.forms ja
Atsushi Nakamura
PPTX
Enterpriseから見たXamarinの可能性
Atsushi Nakamura
Settings SyncとCodespaceで体験する新世代へのパラダイムシフト
Atsushi Nakamura
C#メタプログラミング概略 in 2021
Atsushi Nakamura
Unicodeで半角全角を扱うAmbiguous(曖昧さ)とUncertainty(不確実性)の恐怖
Atsushi Nakamura
世界一わかりやすいClean Architecture - DroidKaigiバージョン
Atsushi Nakamura
世界一わかりやすいClean Architecture
Atsushi Nakamura
世界一わかりやすいClean Architecture release-preview
Atsushi Nakamura
世界一わかりやすいClean Architecture alpha-1
Atsushi Nakamura
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Atsushi Nakamura
Desktop app dev strategy for .net core 3.0
Atsushi Nakamura
継続的にテスト可能な設計を考える
Atsushi Nakamura
継続的にテスト可能な設計を考える ベータ版
Atsushi Nakamura
α版 継続的にテスト可能な設計を考える
Atsushi Nakamura
App center analyticsを使い倒そう
Atsushi Nakamura
Old:App center analyticsを使い倒そう
Atsushi Nakamura
Xamarin.forms navigation overview
Atsushi Nakamura
App center analyticsを使い倒そう
Atsushi Nakamura
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
Xamarin Dev days 2 xamarin.forms ja
Atsushi Nakamura
Enterpriseから見たXamarinの可能性
Atsushi Nakamura
Blue monkey architecture overview
1.
© 2017 @nuits_jp Blue
Monkey Architecture Overview 2017.03.14
2.
© 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 自己紹介
3.
© 2017 @nuits_jp はじめに
4.
© 2017 @nuits_jp BlueMonkeyプロジェクトのゴール 【ゴール】 一定規模のチーム開発に耐えうる アーキテクチャのリファレンス実装の提案 【重視しているポイント】 •
テスト容易性・変更容易性の確保 • クロスプラットフォーム対応 • 特定バックエンドへの非依存
5.
© 2017 @nuits_jp アーキテクチャ上のキーワード •
Prism for Xamarin.Forms • MVVM Pattern • MVVMのM
6.
© 2017 @nuits_jp Prism
for Xamarin.Forms
7.
© 2017 @nuits_jp MVVMパターンで辛くなりがちな点 Binding
& Command Update NotificationNotification • 画面遷移 • 確認ダイアログ • 選択ダイアログ
8.
© 2017 @nuits_jp What
is Prism? • XAML Application Framework • Guidance • Patterns & Practices • Testable & Maintainable • Open Source • .NET Foundation
9.
© 2017 @nuits_jp What
do you get? • MVVM Support • Commanding • Messaging • Navigation • Page Dialog Service • Dependency Injection • Logging
10.
© 2017 @nuits_jp What
do you get? • MVVM Support • Commanding • Messaging • Navigation • Page Dialog Service • Dependency Injection • Logging
11.
© 2017 @nuits_jp What
is Prism? • XAML Application Framework • Guidance • Patterns & Practices • Testable & Maintainable • Open Source • .NET Foundation
12.
© 2017 @nuits_jp MVVMパターンとは
13.
© 2017 @nuits_jp よくみかけるMVVMの図 Binding
& Command Update NotificationNotification
14.
© 2017 @nuits_jp MVVM
is 何
15.
© 2017 @nuits_jp MVVM
is PDS Presentaion Domain Separation:PDS
16.
© 2017 @nuits_jp PDS
is SoC Separation of Concerns:SoC Presentaion Domain Separation:PDS
17.
© 2017 @nuits_jp SoC
Overview Separation of Concerns:SoC Presentaion Domain Separation:PDSInversion of Control:IoC
18.
© 2017 @nuits_jp よくみかけるMVVMの図 Binding
& Command Update NotificationNotification
19.
© 2017 @nuits_jp よくみかけるMVVMの図 Binding
& Command Update NotificationNotification プレゼンテーション その他
20.
© 2017 @nuits_jp 実際の割合 Binding
& Command Update NotificationNotification プレゼンテー ション その他
21.
© 2017 @nuits_jp Mobile
& Cross Platform開発 Modelにも • 専門性の高い領域 • テストが難しい領域 が多数存在します
22.
© 2017 @nuits_jp Mobile
& Cross Platformは課題の山 • プラットフォーム依存領域 • 時間 • 非同期処理 • プッシュ通知 • センサー類(位置情報、加速度、カメラ)
23.
© 2017 @nuits_jp Why
Prism for Xamarin.Forms • PrismはMVVMの課題だけでなく、これらの課題に対しても、ガ イダンスを提供します • Prismはアプリケーションを開発する上での、パターンとプラク ティスの集合です • そしてこれらは、テスト容易性と保守容易性を提供します
24.
© 2017 @nuits_jp MVVMのM Binding
& Command Update NotificationNotification プレゼンテー ション その他
25.
© 2017 @nuits_jp MVVMのM
26.
© 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
27.
© 2017 @nuits_jp なぜ戻り値はTask縛りなのか? 読書中の書籍というModelがあり、ある視点から見ると目次というViewと して表現され 別の視点から見ると本文のテキスト画面というViewとして表現される。
28.
© 2017 @nuits_jp MVVMのM
どう整理する? Binding & Command Update NotificationNotification プレゼンテーション その他 ? ? ?
29.
© 2017 @nuits_jp BlueMonkeyのレイヤーアーキテクチャ View ViewModel Model
30.
© 2017 @nuits_jp What
is Usecase? Usecase:経費を登録する Usecaseとは、利用者にたいしてアプリ(システム)が提供する本質的な価値のこと 「それ」を終えた後、アプリ(システム)から離れてもよい単位と考えると分かりやすい
31.
© 2017 @nuits_jp BlueMonkeyのレイヤーアーキテクチャ View ViewModel Model 【Usecase】 画面遷移間にまたがって状態を維持する ドメインロジックをカプセル化する •
経費を登録する • 経費を閲覧する • レポートを登録する • レポートを閲覧する 【Service】 Usecaseを実現する為の、「機能」を提供する • ExpenseService(バックエンドの通信クライ アント) • LoginService • MediaService • TimeService
32.
© 2017 @nuits_jp オフライン同期を考慮する View ViewModel Model UsecaseとServiceの間に •
オフライン同期 • キャッシュ などを透過的に制御する層が欲しい。 バックエンドの実装から大きく影響を受け るため、Usecaseに対して実装を隠蔽した い。 要検討
33.
© 2017 @nuits_jp Blue
monkey コンポーネント図
34.
© 2017 @nuits_jp BlueMonkeyコンポーネント図 cmp
Component Model BlueMonkey ViewModelsViews Models Services Views ViewModels Usecases ExpenseServices LoginService MediaServices TimeService Application DroidiOS BlueMonkey Transaction Transaction.Unity
35.
© 2017 @nuits_jp BlueMonkeyコンポーネント図 cmp
Component Model BlueMonkey ViewModelsViews Models Services Views ViewModels Usecases ExpenseServices LoginService MediaServices TimeService Application DroidiOS BlueMonkey Transaction Transaction.Unity
36.
© 2017 @nuits_jp BlueMonkeyコンポーネント図 cmp
Component Model BlueMonkey ViewModelsViews Models Services Views ViewModels Usecases ExpenseServices LoginService MediaServices TimeService Application DroidiOS BlueMonkey Transaction Transaction.Unity
37.
© 2017 @nuits_jp BlueMonkeyコンポーネント図 cmp
Component Model BlueMonkey ViewModelsViews Models Services Views ViewModels Usecases ExpenseServices LoginService MediaServices TimeService Application DroidiOS BlueMonkey Transaction Transaction.Unity
38.
© 2017 @nuits_jp BlueMonkeyコンポーネント図 cmp
Component Model BlueMonkey ViewModelsViews Models Services Views ViewModels Usecases ExpenseServices LoginService MediaServices TimeService Application DroidiOS BlueMonkey Transaction Transaction.Unity
39.
© 2017 @nuits_jp BlueMonkeyコンポーネント図 cmp
Component Model BlueMonkey ViewModelsViews Models Services Views ViewModels Usecases ExpenseServices LoginService MediaServices TimeService Application DroidiOS BlueMonkey Transaction Transaction.Unity
40.
© 2017 @nuits_jp BlueMonkeyコンポーネント図 cmp
Component Model BlueMonkey ViewModelsViews Models Services Views ViewModels Usecases ExpenseServices LoginService MediaServices TimeService Application DroidiOS BlueMonkey Transaction Transaction.Unity
41.
© 2017 @nuits_jp Transaction? Usecase:経費を登録する Usecaseオブジェクトのライフサイクルを管理する仕組み
42.
© 2017 @nuits_jp コードを見てみましょう!
43.
© 2017 @nuits_jp 制約事項
44.
© 2017 @nuits_jp 現在未完了の領域 •
ユーザーインターフェースへのデザインの適用 • オフライン同期、キャッシュ制御のアーキテクチャの提示 • 検索結果のページング処理 など
45.
© 2017 @nuits_jp Xamarin
技術同人誌 出します! • う-13 「Xamaritans」 • 超技術書典(in ニコニコ長会議2017)でも
Editor's Notes
#13:
BlueMonkeyはXamarin.Formsを利用したアプリケーションです。 このため、MVVMパターンを採用しています。
#46:
Xamarin.Android で始めるクロスプラットフォームモバイルアプリ開発 できるXamarin.Mac Prism for Xamarin.Forms入門と次の門 開発者のためのXamarin関連リポジトリ集
Download