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
280
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
560
Understanding the Shift to Mobile
bradgignac
0
370
Front-End Operations
bradgignac
4
720
Intro to CoreOS
bradgignac
4
1.2k
Web Components and the Future of JS Frameworks
bradgignac
3
700
Modular CSS
bradgignac
0
22
Other Decks in Programming
See All in Programming
バイブコーディングの正体——AIエージェントはソフトウェア開発を変えるか?
stakaya
5
900
Flutter로 Gemini와 MCP를 활용한 Agentic App 만들기 - 박제창 2025 I/O Extended Seoul
itsmedreamwalker
0
130
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
1
640
What's new in Adaptive Android development
fornewid
0
140
202507_ADKで始めるエージェント開発の基本 〜デモを通じて紹介〜(奥田りさ)The Basics of Agent Development with ADK — A Demo-Focused Introduction
risatube
PRO
6
1.4k
AI時代のドメイン駆動設計-DDD実践におけるAI活用のあり方 / ddd-in-ai-era
minodriven
6
1.2k
Reactの歴史を振り返る
tutinoko
1
180
実践 Dev Containers × Claude Code
touyu
1
180
Claude Code と OpenAI o3 で メタデータ情報を作る
laket
0
130
マイコンでもRustのtestがしたい その2/KernelVM Tokyo 18
tnishinaga
2
2.3k
MCPで実現できる、Webサービス利用体験について
syumai
7
2.5k
#QiitaBash TDDで(自分の)開発がどう変わったか
ryosukedtomita
1
360
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.8k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
760
How STYLIGHT went responsive
nonsquared
100
5.7k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.3k
Site-Speed That Sticks
csswizardry
10
770
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
Making Projects Easy
brettharned
117
6.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?