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
Thinking in Swift!
Search
Ritesh Gupta
January 21, 2017
Technology
3
410
Thinking in Swift!
Swift India, Delhi Meetup
Ritesh Gupta
January 21, 2017
Tweet
Share
More Decks by Ritesh Gupta
See All by Ritesh Gupta
Declarative Networking with Combine –– iOS Conf SG 2020
riteshhh
0
170
Combine! All the things
riteshhh
3
690
Deep dive into Protocols
riteshhh
1
420
How to be a POP-Star
riteshhh
1
340
Other Decks in Technology
See All in Technology
AIとともに進化するエンジニアリング / Engineering-Evolving-with-AI_final.pdf
lycorptech_jp
PRO
0
140
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
200
AI導入の理想と現実~コストと浸透〜
oprstchn
0
150
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
220
Node-RED × MCP 勉強会 vol.1
1ftseabass
PRO
0
180
Fabric + Databricks 2025.6 の最新情報ピックアップ
ryomaru0825
1
160
無意味な開発生産性の議論から抜け出すための予兆検知とお金とAI
i35_267
0
1.2k
AWS テクニカルサポートとエンドカスタマーの中間地点から見えるより良いサポートの活用方法
kazzpapa3
2
610
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
1.3k
あなたの声を届けよう! 女性エンジニア登壇の意義とアウトプット実践ガイド #wttjp / Call for Your Voice
kondoyuko
4
510
KubeCon + CloudNativeCon Japan 2025 に行ってきた! & containerd の新機能紹介
honahuku
0
120
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
6
600
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
Side Projects
sachag
455
42k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
500
The World Runs on Bad Software
bkeepers
PRO
69
11k
The Invisible Side of Design
smashingmag
300
51k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
How STYLIGHT went responsive
nonsquared
100
5.6k
Why Our Code Smells
bkeepers
PRO
337
57k
Facilitating Awesome Meetings
lara
54
6.4k
Designing for Performance
lara
609
69k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
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