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
1
240
Swift rEvolution
Swift Revolution
Konstantin
November 05, 2016
Tweet
Share
More Decks by Konstantin
See All by Konstantin
How does complier see your app
konstantinkoval
4
160
Swift Package Manager
konstantinkoval
2
180
Refactoring an Ugly Objective-C with Swift
konstantinkoval
0
240
React Native - from a mobile (iOS) developer prospective
konstantinkoval
0
74
Swift - Pushing technology limits
konstantinkoval
1
250
WatchKit
konstantinkoval
0
65
Intro in WatchKit and Watch apps
konstantinkoval
0
65
Functional Swift
konstantinkoval
1
150
I love swift.pdf
konstantinkoval
1
200
Other Decks in Programming
See All in Programming
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
170
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する
ota1022
0
240
Serena MCPのすすめ
wadakatu
4
880
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
930
Reduxモダナイズ 〜コードのモダン化を通して、将来のライブラリ移行に備える〜
pvcresin
2
670
Web Components で実現する Hotwire とフロントエンドフレームワークの橋渡し / Bridging with Web Components
da1chi
3
1.5k
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
2
360
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
890
Breaking Up with Big ViewModels — Without Breaking Your Architecture (droidcon Berlin 2025)
steliosf
PRO
1
290
LLMとPlaywright/reg-suitを活用した jQueryリファクタリングの実際
kinocoboy2
4
660
iOS 17で追加されたSubscriptionStoreView を利用して5分でサブスク実装チャレンジ
natmark
0
500
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
890
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
890
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
GraphQLとの向き合い方2022年版
quramy
49
14k
GitHub's CSS Performance
jonrohan
1032
460k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
9
570
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Designing for Performance
lara
610
69k
Facilitating Awesome Meetings
lara
56
6.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.7k
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