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
Data processing components architecture in mobi...
Search
vmalakhovskiy
October 31, 2015
Programming
0
82
Data processing components architecture in mobile applications
This slides will briefly show you about 2 most used data access layer designs in mobile application
vmalakhovskiy
October 31, 2015
Tweet
Share
More Decks by vmalakhovskiy
See All by vmalakhovskiy
Engineering team best friend - CI/CD
vmalakhovskiy
0
69
Data driven view controllers
vmalakhovskiy
0
430
Cocoaheads #13
vmalakhovskiy
0
43
MadCode 13 Webinar
vmalakhovskiy
0
49
Developing apps for Apple Watch
vmalakhovskiy
0
66
Why do you need to switch from Obj-C to Swift, or let's talk about ReactiveCocoa v4
vmalakhovskiy
0
510
Other Decks in Programming
See All in Programming
AkarengaLT vol.38
hashimoto_kei
1
110
CSC305 Lecture 08
javiergs
PRO
0
270
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
460
ALL CODE BASE ARE BELONG TO STUDY
uzulla
27
6.6k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
570
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
530
Google Opalで使える37のライブラリ
mickey_kubo
3
130
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
18
7.6k
bootcamp2025_バックエンド研修_WebAPIサーバ作成.pdf
geniee_inc
0
120
AI Agent 時代的開發者生存指南
eddie
4
2.1k
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
620
CSC305 Lecture 06
javiergs
PRO
0
270
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
Code Review Best Practice
trishagee
72
19k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Producing Creativity
orderedlist
PRO
347
40k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
How STYLIGHT went responsive
nonsquared
100
5.8k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
610
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Transcript
Data processing components architecture in mobile applications Malakhovskyi Vitalii iOS
Developer @
Why?
Can we talk about architecture? OИ
Benefits: - you know what to do - code review
- it saves your time - better code
The type of application you are building: Business Logic CRUD
Active Record Data Mapper
Active Record
id name surname 1 Vasya Bananoshvili 2 Evgen Lypan
Active Record Instance - create - save - delete -
findBy - validate - work - firstName - lastName
None
Domain Data Presentation View Model
Advantages: - easy to use - easy to implement
Disadvantages: - violates SRP - hard to unit test
Data Mapper
Business Object - firstName - lastName - middleName
Antenna Antenna Adapter Cloud Adapter Magic Adapter Application How it
works? Cloud Magic
Data Access Object or Data Mapper Data Mapper Instance Data
Source Parser Application < CRUD > JSON Serializer JSON Object JSON Object Object
None
Database Mapper Network Mapper Mapper with strategy ? Strategy
Magic Mapper Mapper Repository Parser / Serializer Cloud Mapper Antenna
Mapper Parser / Serializer Parser / Serializer
Advantages: - separation of concerns - allows easy unit testing
Disadvantages: - adds another layer of abstraction
None
Conclusion Data mapper better Active Record Active Record better Data
mapper
“Architecture is about intent, not frameworks” - Robert C. Martin
Thank you!
Contact me: purpleshirted crimsongf Vitaliy Malakhovskiy
1. Martin Fowler - Presentation Domain Data Layering http://martinfowler.com/bliki/PresentationDomainDataLayering.html 2.
Active Record vs. Data Mapper http://culttt.com/2014/06/18/whats-difference-active-record-data-mapper/ 3. The Clean Architecture http://blog.8thlight.com/uncle-bob/2012/08/13/the-clean-architecture.html What to read?