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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
bradgignac
April 14, 2012
Programming
3
290
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
590
Understanding the Shift to Mobile
bradgignac
0
390
Front-End Operations
bradgignac
4
760
Intro to CoreOS
bradgignac
4
1.2k
Web Components and the Future of JS Frameworks
bradgignac
3
720
Modular CSS
bradgignac
0
25
Other Decks in Programming
See All in Programming
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
Fragmented Architectures
denyspoltorak
0
150
Fluid Templating in TYPO3 14
s2b
0
130
CSC307 Lecture 07
javiergs
PRO
0
550
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
600
AI時代の認知負荷との向き合い方
optfit
0
140
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
220
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
140
AtCoder Conference 2025
shindannin
0
1k
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
6
1.9k
Patterns of Patterns
denyspoltorak
0
1.4k
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6k
Featured
See All Featured
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
170
Designing Powerful Visuals for Engaging Learning
tmiket
0
220
Claude Code のすすめ
schroneko
67
210k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
280
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
110
Odyssey Design
rkendrick25
PRO
1
490
Into the Great Unknown - MozCon
thekraken
40
2.2k
How to build a perfect <img>
jonoalderson
1
4.9k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
220
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
640
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
250
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.6k
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?