Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rich Client Design Patterns
Search
bradgignac
April 14, 2012
Programming
3
260
Rich Client Design Patterns
Patterns for building rich client applications.
bradgignac
April 14, 2012
Tweet
Share
More Decks by bradgignac
See All by bradgignac
Why You Might Not Need Yet Another Environment
bradgignac
1
530
Understanding the Shift to Mobile
bradgignac
0
340
Front-End Operations
bradgignac
4
680
Intro to CoreOS
bradgignac
4
1.1k
Web Components and the Future of JS Frameworks
bradgignac
3
670
Modular CSS
bradgignac
0
12
Other Decks in Programming
See All in Programming
ヤプリ新卒SREの オンボーディング
masaki12
0
130
Jakarta EE meets AI
ivargrimstad
0
510
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
7
7.7k
TypeScript Graph でコードレビューの心理的障壁を乗り越える
ysk8hori
2
1.1k
タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用
mot_techtalk
4
1.4k
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
520
Ethereum_.pdf
nekomatu
0
460
macOS でできる リアルタイム動画像処理
biacco42
9
2.4k
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
8
540
Jakarta EE meets AI
ivargrimstad
0
120
RubyLSPのマルチバイト文字対応
notfounds
0
120
Make Impossible States Impossibleを 意識してReactのPropsを設計しよう
ikumatadokoro
0
170
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
It's Worth the Effort
3n
183
27k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
The Language of Interfaces
destraynor
154
24k
A Philosophy of Restraint
colly
203
16k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Transcript
Rich Client DESIGN PATTERNS
What is a Rich Client? A stateful application that uses
client-side business logic in order to provide the user with an improved experience.
MVVM MVP MVC
MVVM MVP MVC
MVC Communication Model View Controller
Architecture MVC Data Access Layer Business Logic Layer View Controller
MVC Key Points Reuse through nested view/controller pairs Observer and
strategy patterns decrease coupling Tied directly to domain model View code can be difficult to test
MVVM MVP MVC
MVP Communication Model View Presenter
Architecture MVP Data Access Layer Business Logic Layer Presenter View
MVP Key Points Reuse by using presenter with multiple views
More obvious interaction than MVC View decoupled from domain model Mockable views for easier testing
MVVM MVP MVC
Communication MVVM Model View View Model
Architecture MVVM Data Access Layer Business Logic Layer View Model
View
MVVM Key Points Reuse through nested views Observer pattern decreases
coupling View decoupled from domain model View model is easily testable
Any Questions?