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
Swift rEvolution
Search
Konstantin
November 05, 2016
Programming
270
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swift rEvolution
Swift Revolution
Konstantin
November 05, 2016
More Decks by Konstantin
See All by Konstantin
How does complier see your app
konstantinkoval
3
190
Swift Package Manager
konstantinkoval
2
220
Refactoring an Ugly Objective-C with Swift
konstantinkoval
0
270
React Native - from a mobile (iOS) developer prospective
konstantinkoval
0
92
Swift - Pushing technology limits
konstantinkoval
1
330
WatchKit
konstantinkoval
0
100
Intro in WatchKit and Watch apps
konstantinkoval
0
95
Functional Swift
konstantinkoval
1
170
I love swift.pdf
konstantinkoval
1
220
Other Decks in Programming
See All in Programming
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
170
[PyCon KR 2026] More Variants, More Diversity for AI Accelerators
achimnol
0
120
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
170
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
440
How I Won Prize Money at a Hackathon Using Codex and Symphony Alpha
yasei_no_otoko
0
130
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
290
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
670
React本体のコードリーディング
high_g_engineer
1
160
30年振りにコンパイラの定数整数除算を改善した
herumi
9
4.3k
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
400
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
190
typoなんかねぇよ
raspython3
0
610
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
The Curse of the Amulet
leimatthew05
2
14k
30 Presentation Tips
portentint
PRO
1
380
The agentic SEO stack - context over prompts
schlessera
0
880
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
180
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
400
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
650
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.7k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Spectacular Lies of Maps
axbom
PRO
1
950
Six Lessons from altMBA
skipperchong
29
4.5k
Transcript
Swift rEvolution Kostiantyn Koval !@KostiaKoval
Swift Modern and Powerful strives for Simplicity and Safety with
"C-like" Performance
The Beginning -?
rEvolution start Jul 2010
rEvolution start • "Sat Jul 17 23:50:59 2010 +0000" •
September 9, 2014 - ! Swift 1.0 • September 21, 2015 - "# Swift 2.0
rEvolution start • "Sat Jul 17 23:50:59 2010 +0000" •
September 9, 2014 - ! Swift 1.0 • September 21, 2015 - "# Swift 2.0 December 3, 2015 Big Bang -!"✨
Swift - Open Source
Open ! 1. Source at GitHub, not opensource.apple.com 2. Full
commit history 43,429 43,898 commits 3. Commit access 4. New open source projects: swift-protobuf 5. Workflow 6. Evolution and discussions
Syntax: simple - clean - nice let swift = "!"
Learning & Teaching & Coding • simple - clean -
nice Syntax • Swift Playgrounds • Xcode Playground
Learning & Teaching & Coding • simple - clean -
nice Syntax • Swift Playgrounds • Xcode Playground Great as first programming language!
Tools ! • Swift compiler + stdlib • foundation, libdispatch
• xctest • Swift Package Manager, llbuild • CI, !, Benchmark • More: playgrounds, protobuf
Community - People ! " #
Platforms Mobile | Desktop Server | Web Embedded
Platforms • iOS and macOS - • Linux -
• Web - IBM + + Server APIs • Android - Community + "Brian Gesiak" Other • Raspberrypi, Windows, FreeBSD, PS4,
static const StringRef OSs[] = { static const StringRef Arches[]
= { "OSX", "arm", "tvOS", "arm64", "watchOS", "i386", "iOS", "x86_64", "Linux", "powerpc64", "FreeBSD", "powerpc64le", "Windows", "s390x" "Android", }; "PS4", }; static const StringRef Endianness[] = { "little", "big" };
Web ! • Swift@IBM: • Frameworks: Kitura, Vapor, Perfect, Zewo
• Hosting: Heroku, AWS, Digital Ocean, Azure • Performance: > nodeJS, java, ruby
Web ! • Swift@IBM: • Frameworks: Kitura, Vapor, Perfect, Zewo
• Hosting: Heroku, AWS, Digital Ocean, Azure • Performance: > nodeJS, java, ruby Server APIs Project
None
Android • apple/swift - • stdlib + Foundation •
swift-corelibs-libdispatch open PR "#162" • !"# SwiftAndroid
Android Requirements: NDK, libiconv-libicu, .... • swift repo: 100% swift
• SwiftAndroid: android app + swift lib "How we put an app in the Android Play Store using Swift"
Android limitations • Hard to setup • No java interoperability
• Community driven Not production ready, Yet
Evolution Swift is Young and Moves fast
It is not the strongest that survive, but the one
who are willing to adapt — Evolution
Hottest News!! !
Swift 2.3 is Deprecated Xcode 8.2 release notes
Evolution apple/swift-evolution -> apple.github.io/swift-evolution • 3 major release in 2
years • 144 Accepted proposals. 1,591 commits • hundred thousand of emails in mailing list
Swift 3.0 • 90+ proposals • Syntax, Syntax, (if let
- where, open, fileprivate, ...) • Swifty Foundation, GCD and API • Removed automatic objc-swift bridging • C and UnsafePointer • Swift Package Manager release !
But where is ABI ? Not there yet. We were
busy breaking the language !
Swift 4.0 ! • ! No Source breaking changes (unless
impacts ABI) *hopefully, maybe • ABI • Stabilization, Resilience • Generics, String • Memory ownership
Stay up to date with Swift • try? Swift •
Beta • Newsletters • Evolutions • Mailing List ! - lists.swift.org
One More Thing
Compile time • Compilation performance • Debugging Slow Swift Compile
Compile time • Compilation performance • Debugging Slow Swift Compile
25% speedup
Thanks Questions? @KostiaKoval