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
230
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
130
Swift Package Manager
konstantinkoval
2
160
Refactoring an Ugly Objective-C with Swift
konstantinkoval
0
220
React Native - from a mobile (iOS) developer prospective
konstantinkoval
0
63
Swift - Pushing technology limits
konstantinkoval
1
230
WatchKit
konstantinkoval
0
60
Intro in WatchKit and Watch apps
konstantinkoval
0
55
Functional Swift
konstantinkoval
1
130
I love swift.pdf
konstantinkoval
1
180
Other Decks in Programming
See All in Programming
Immutable ActiveRecord
megane42
0
130
CI改善もDatadogとともに
taumu
0
110
JavaScriptツール群「UnJS」を5分で一気に駆け巡る!
k1tikurisu
10
1.8k
ARA Ansible for the teams
kksat
0
150
自分ひとりから始められる生産性向上の取り組み #でぃーぷらすオオサカ
irof
8
2.6k
iOSエンジニアから始める visionOS アプリ開発
nao_randd
3
120
Pulsar2 を雰囲気で使ってみよう
anoken
0
230
AHC041解説
terryu16
0
590
最近のVS Codeで気になるニュース 2025/01
74th
1
250
SRE、開発、QAが協業して挑んだリリースプロセス改革@SRE Kaigi 2025
nealle
3
4.1k
Lottieアニメーションをカスタマイズしてみた
tahia910
0
120
時計仕掛けのCompose
mkeeda
1
280
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
The Language of Interfaces
destraynor
156
24k
A better future with KSS
kneath
238
17k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
A designer walks into a library…
pauljervisheath
205
24k
Done Done
chrislema
182
16k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Designing for Performance
lara
604
68k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
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