Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Thinking in Swift by Ritesh at SwiftDelhi-1
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Swift India
January 21, 2017
Programming
79
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Thinking in Swift by Ritesh at SwiftDelhi-1
Thinking in Swift by Ritesh at SwiftDelhi-1
Swift India
January 21, 2017
More Decks by Swift India
See All by Swift India
Network Layer Abstraction
swiftindia
0
190
Efficient JSON to Object Parsing
swiftindia
0
180
Sign In with Apple
swiftindia
0
190
Furlenco's AR Journey
swiftindia
0
160
Image processing using Core Image and Metal
swiftindia
0
270
Combine - Diving into Apple’s Reactive Programming
swiftindia
1
310
Social in Hotstar
swiftindia
0
280
Improving App Launch Time
swiftindia
1
160
Backend Driven UIs
swiftindia
0
160
Other Decks in Programming
See All in Programming
一人だけ、Kiroが静止する日
hideg
0
140
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
600
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
360
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
4
350
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
7
2.3k
Are APIs Still Relevant in the AI Era?
soyuka
0
380
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1k
SREの越境 / SRE Collaboration
y0hgi
2
290
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
8
5.2k
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
320
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
400
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
19
19k
Featured
See All Featured
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
310
Side Projects
sachag
456
43k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
How to Ace a Technical Interview
jacobian
280
24k
Designing Powerful Visuals for Engaging Learning
tmiket
1
580
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
850
Amusing Abliteration
ianozsvald
1
320
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.3k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
720
Deep Space Network (abreviated)
tonyrice
0
350
Transcript
in Swift ~ Ritesh Gupta (Swift India, Delhi Meetup)
Swift is just not a syntax migration from Objective-C…
Swift is not objective-c styled language…
C ~> C++ Objective-C ~> Swift { imperative } {
object oriented } { object oriented } { protocol oriented }
None
None
None
None
stuck with Inheritance..
None
None
compose everything with Protocols..
UIButton UIBarButtonItem
UIButton UIControl UIView
UIBarButtonItem UIBarItem NSObject
UIBarButtonItem UIBarItem NSObject UIButton UIControl UIView
None
None
Entity (class, struct) vs Behaviour (protocol)
UIView Framable
UIImageView ImageRenderable, Framable
UIButton Tappable, ImageRenderable, Framable
UITableViewCell UICollectionViewCell Reusable, Framable
UIScrollView Scrollable, Framable
UITableView UICollectionView Listable, Scrollable, Framable
UI Entities is collection of behaviours…
..computed variables, extensions, values types, immutability, functional programming, generics, enums,
associative types/ values..
thinking in protocol..
None