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!
Search
Ritesh Gupta
January 21, 2017
Technology
460
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Thinking in Swift!
Swift India, Delhi Meetup
Ritesh Gupta
January 21, 2017
Transcript
29 slides
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
More Decks by Ritesh Gupta
See All by Ritesh Gupta
Declarative Networking with Combine –– iOS Conf SG 2020
riteshhh
0
200
Combine! All the things
riteshhh
3
730
Deep dive into Protocols
riteshhh
1
480
How to be a POP-Star
riteshhh
1
420
Other Decks in Technology
See All in Technology
農夫は秘伝のタレを知らない - NOBODY KNOWS THE HIDDEN SOURCE - Kaggriculture 3rd Place Solution
masspeaks
0
260
これからのデータエンジニアの役割について考える / Rethinking the Role of Data Engineers in the AI Era
okiyuki99
0
460
マネージャーをエスパーにしない マネジメントされる側から始める、働きやすい現場づくり
comi190327
0
110
20261113_JAWS_Osaka
takuyay0ne
0
260
Linuxネットワークスタック進化の軌跡: 過去10年の歩みと最新トレンド
orimanabu
2
570
サボる子はいねぇがー!AgentCoreハーネスの脆弱性に学ぶ、エージェントの入力バリデーション
iwamot
PRO
5
330
マネジメントされる側の仕事は「文句」を言うこと
riyaamemiya
2
310
Biohub - Cell Tracking During Development 5th place solution
rist
0
140
大江戸Ruby会議でデータベース クライアントの話をするのは 間違っているだろうか
yahonda
1
120
AI時代に求められる優秀なTechLeadの振る舞い
pospome
11
16k
業務でAWSをあまり使っていない私が、AWSへのモチベを保つ方法
smt7174
0
190
「AIチャットからもできないの?」と言われたら ~業務アプリをMCP対応するときの認証・認可の勘所
oidfj
0
320
Featured
See All Featured
Utilizing Notion as your number one productivity tool
mfonobong
4
640
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Skip the Path - Find Your Career Trail
mkilby
1
290
The Language of Interfaces
destraynor
162
27k
Abbi's Birthday
coloredviolet
5
11k
Facilitating Awesome Meetings
lara
57
7.2k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
610
4 Signs Your Business is Dying
shpigford
187
23k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
1.1k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Code Reviewing Like a Champion
maltzj
529
40k