Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Swift Intro
Search
Max Goedjen
December 02, 2014
Programming
0
69
Swift Intro
Max Goedjen
December 02, 2014
Tweet
Share
Other Decks in Programming
See All in Programming
TypeScript 5.9 で使えるようになった import defer でパフォーマンス最適化を実現する
bicstone
1
750
『実践MLOps』から学ぶ DevOps for ML
nsakki55
2
520
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
130
全員アーキテクトで挑む、 巨大で高密度なドメインの紐解き方
agatan
8
17k
Microservices Platforms: When Team Topologies Meets Microservices Patterns
cer
PRO
1
820
WebRTC、 綺麗に見るか滑らかに見るか
sublimer
1
110
Building AI with AI
inesmontani
PRO
1
460
Google Antigravity and Vibe Coding: Agentic Development Guide
mickey_kubo
2
120
Level up your Gemini CLI - D&D Style!
palladius
1
150
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
2.8k
分散DBって何者なんだ... Spannerから学ぶRDBとの違い
iwashi623
0
160
競馬で学ぶ機械学習の基本と実践 / Machine Learning with Horse Racing
shoheimitani
14
14k
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Designing for Performance
lara
610
69k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Why Our Code Smells
bkeepers
PRO
340
57k
What's in a price? How to price your products and services
michaelherold
246
12k
Fireside Chat
paigeccino
41
3.7k
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.1k
How STYLIGHT went responsive
nonsquared
100
5.9k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
70
Transcript
SWIFT
iOS & Mac
Why?
Modern Safe Interoperable
Modern
Modern [ ]
Objective-C [someObject doSomething]; Swift someObject.doSomething()
Modern Blocks & Closures
Objective-C - (void)doSomethingWithCompletion:(void (^)(NSError *))completion; Swift func doSomethingWithCompletion(completion: (NSError) ->
(Void))
Modern Primitives & Literals
Objective-C NSArray *numbers = @[@1, @2, @3]; // NSArray *numbers
= [NSArray arrayWithObjects: // [NSNumber numberWithInt:1], // [NSNumber numberWithInt:2], // [NSNumber numberWithInt:3] // ]; Swift let numbers = [1, 2, 3]
Modern Custom Operators
Custom Operators { /* do some task */ } ~>
{ /* update some UI */}
Safety
Safety Static Typing
Safety Nil Safety
Objective-C SomeObject *someObject = nil; [someObject performCriticalTask]; Swift let someObject:
SomeObject = nil someObject.performCriticalTask() // Compiler error
Objective-C SomeObject *object = nil; NSArray *objectList = @[object]; //
Crash Swift let object: SomeObject? let objectList = [object] // :)
Safety Immutability
Objective-C NSArray & NSMutableArray Swift let & var
Common iOS Tasks Delegation
Objective C if ([self.delegate respondsToSelector:@selector(someDelegateMessage:)]) { [self.delegate someDelegateMessage:self]; } Swift
delegate?.someDelegateMessage?(self)
Interoperability
Swift All The Things? Not So Fast
None
Xcode !
None
Tooling
Tooling REPL
Tooling Playgrounds
Playgrounds
Further Reference Learn Design AND Code!!! GitHub Swift Book Swift
Blog objc.io Airspeed Velocity