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
Backend Driven UIs
Search
Swift India
January 25, 2020
Programming
150
0
Share
Backend Driven UIs
Presented by Bhagat Singh
Swift India
January 25, 2020
More Decks by Swift India
See All by Swift India
Network Layer Abstraction
swiftindia
0
180
Efficient JSON to Object Parsing
swiftindia
0
150
Sign In with Apple
swiftindia
0
160
Furlenco's AR Journey
swiftindia
0
140
Image processing using Core Image and Metal
swiftindia
0
240
Combine - Diving into Apple’s Reactive Programming
swiftindia
1
270
Social in Hotstar
swiftindia
0
260
Improving App Launch Time
swiftindia
1
130
Introduction to AsyncDisplayKit / Texture
swiftindia
0
180
Other Decks in Programming
See All in Programming
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
3
160
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
360
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
690
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
200
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
190
Rethinking API Platform Filters
vinceamstoutz
0
11k
Java 21/25 Virtual Threads 소개
debop
0
340
「速くなった気がする」をデータで疑う
senleaf24
0
160
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
300
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
350
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
300
[PHPerKaigi 2026]PHPerKaigi2025の企画CodeGolfが最高すぎて社内で内製して半年運営して得た内製と運営の知見
ikezoemakoto
0
340
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
21k
Being A Developer After 40
akosma
91
590k
The Curse of the Amulet
leimatthew05
1
11k
RailsConf 2023
tenderlove
30
1.4k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
140
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
150
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.7k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
710
Speed Design
sergeychernyshev
33
1.6k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Transcript
Backend Driven UIs
PhonePe iOS Engineer raywenderlich.com Contributor
How we build it now?
We make a TableView or a CollectionView.
Includes a lot of boilerplate, which you are tired of
writing.
Bloats the app.
We keep on doing this till infinity.
The main turn off
Design Iterations
Changing that same view
Again
And Again
Again.
None
Make it independent
“Driving it from the backend”
Why would you want such a thing?
It is purely use-case dependent.
SwiftUI has not taken over the world right now.
Consistency
Adaptability
Iterative
Scaleable
Prerequisites
Design System
Steps to uniforming your UI
Invest time in making a uniform design system
Many Design tools such as Figma, Sketch, Adobe XD.
The most important part.
Get that design system into code
Make it driven from the backend.
Laying our views realtime
UICollectionView
Consists of two entities
Data and Layout
Layout
ViewType
None
ScrollType
None
Data
Data is just an array of objects, which includes necessary
parameters like title, image etc.
UI Elements
BaseView
BaseView is a UIView + A protocol which has all
necessary information to calculate sizes, set some data and so on.
BaseCollectionViewCell
BaseCollectionViewCell is a CVC which has all relevant information on
calculating size and for the layout of the rest of the view.
BaseTableViewCell
BaseTableViewCell is a container which holds all our collectionViews
Some Code
Handling Clicks
Deeplinks and ViewModels
Deeplinks are the key here for in-app navigation
Some Pros
Scaleable
Testable
No intervention necessary
Realtime Updates
Fast and hassle-free
Can last you at least a year if done properly.
Can last you at least a year if done properly.
Unless you have a crazy designer
Some Cons
Performance
Overkill
Idk if it works with Storyboards
What can be improved?
Height Calculations
Height Caching
Some boilerplate
Questions, Suggestions, Ideas!
Thanks @soulful_swift