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
Subclassing, Composition, Python, and You
hynek
3
190
UnJSで簡単に始めるCLIツール開発 / cli-tool-development-with-unjs
aoseyuu
2
380
Serverless renderování Webových komponent
rarous
PRO
0
140
文化が生産性を作る
jimpei
3
630
2024-10-02 dev2next - Application Observability like you've never heard before
jonatan_ivanov
0
200
【YAPC::Hakodate 2024】TypeScriptエンジニアが感じたPerlのここが面白い
kimitashoichi
1
480
Folding Cheat Sheet #8
philipschwarz
PRO
0
140
tsconfig.jsonの最近の新機能 ファイルパス編
uhyo
7
1.9k
組織に自動テストを書く文化を根付かせる戦略(2024秋版) / Building Automated Test Culture 2024 Autumn Edition
twada
PRO
9
3.6k
Competitionsだけじゃない! Kaggle Notebooks Grandmasterのすすめ
corochann
2
940
tc39 x jsconf.jp Panel Discussion 2024
yosuke_furukawa
PRO
0
110
GPU Hash Table | レイトレ合宿10
yknishidate
0
330
Featured
See All Featured
Facilitating Awesome Meetings
lara
49
6k
A better future with KSS
kneath
237
17k
Rails Girls Zürich Keynote
gr2m
93
13k
Pencils Down: Stop Designing & Start Developing
hursman
119
11k
Producing Creativity
orderedlist
PRO
341
39k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
9
630
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
23k
A designer walks into a library…
pauljervisheath
202
24k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
225
22k
Docker and Python
trallard
40
3k
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?