Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
トレタでのSwift 3 対応
Search
Yoonchul Koh
November 29, 2016
Technology
4
8k
トレタでのSwift 3 対応
トレタでのSwift 3 対応について話しました
Yoonchul Koh
November 29, 2016
Tweet
Share
More Decks by Yoonchul Koh
See All by Yoonchul Koh
利用者の動きを可視化してアプリ開発に役立てる方法 Firebase Analyticsの導入とデータ活用について/user-tracking-firebase-analytics
yoonchulkoh
0
230
Xcode Extensions
yoonchulkoh
0
1.5k
Other Decks in Technology
See All in Technology
子育てで想像してなかった「見えないダメージ」 / Unforeseen "hidden burdens" of raising children.
pauli
2
320
フィッシュボウルのやり方 / How to do a fishbowl
pauli
2
360
シニアソフトウェアエンジニアになるためには
kworkdev
PRO
3
260
【開発を止めるな】機能追加と並行して進めるアーキテクチャ改善/Keep Shipping: Architecture Improvements Without Pausing Dev
bitkey
PRO
1
120
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
2
180
Connection-based OAuthから学ぶOAuth for AI Agents
flatt_security
0
300
Bedrock AgentCore Evaluationsで学ぶLLM as a judge入門
shichijoyuhi
1
150
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
0
490
さくらのクラウド開発ふりかえり2025
kazeburo
2
410
AI時代のワークフロー設計〜Durable Functions / Step Functions / Strands Agents を添えて〜
yakumo
3
1.9k
意外と知らない状態遷移テストの世界
nihonbuson
PRO
1
200
「図面」から「法則」へ 〜メタ視点で読み解く現代のソフトウェアアーキテクチャ〜
scova0731
0
480
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.7k
It's Worth the Effort
3n
187
29k
Everyday Curiosity
cassininazir
0
110
エンジニアに許された特別な時間の終わり
watany
105
220k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
A better future with KSS
kneath
240
18k
Optimizing for Happiness
mojombo
379
70k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Transcript
τϨλͰͷ Swift 3 ରԠ @y_koh 2016/11/29 potatotips #35
ࣗݾհ • τϨλͰiOSΤϯδχΞͬͯ·͢ • @y_koh
τϨλSwift 3 ରԠ͠·ͨ͠
ͭΒ͔ͬͨ
τϨλΞϓϦͷ֓ཁ • 201312݄ϦϦʔεɻϦϦʔεͯ͠3 • 201510݄Swift 2.0ಋೖɻ • Swift2ׂͰϑΝΠϧ180 • ίʔυྔશମͰ9ສ5ઍ͘Β͍
εέδϡʔϧײ • Ϗϧυ௨Δ·Ͱ1िؒ • ྃ·Ͱ2.5िؒ
ରԠॱং 1. ใऩू 2. ϥΠϒϥϦΞοϓσʔτ 3. Swift 3 Convert 4.
Τϥʔ௵͠ 5. ಈ࡞֬ೝ
ใऩू • [iOS][Swift] Swift 3.0ͷมߋ·ͱΊ http://dev.classmethod.jp/smartphone/iphone/ implemented_proposals_for_swift3/ • iQONΛSwift 3.0.1ʹΞοϓσʔτͨ͠ͱ͖ʹରԠͨ͠ϙΠ
ϯτ http://tech.vasily.jp/entry/update_swift_3_0_1 • ࠓɺSwift2 Ͱॻ͍͍ͯΔಉ๔ୡɻ࠷ݶ͓͖ͬͯͨ ͍ɺSwift2 ͷ··Ͱ࢝ΊΔ Swift3 ରࡦ http://qiita.com/ezura/items/e7703eb04d2d1f2946b9
ϥΠϒϥϦΞοϓσʔτ • Swift 3 ʹରԠ͍ͯ͠Δ͔ಓʹௐΔ • ରԠͯ͠ͳ͚ΕΓ͑ݕ౼ • Obj-CϥΠϒϥϦnullable, nonnullରԠͯͨ͠Γ
͢ΔͷͰ֬ೝͯ͠ΈΔͱྑ͍
Swift 3 Convert • ݁ߏ͔͔࣌ؒΔ • વʁ͏·͘ConvertͰ͖ͳ͍ͱ͜Ζ͕͋Δ
͏·͘ConvertͰ͖ͳ͔ͬͨͱ ͜Ζ • enumͷlower camel caseԽ • UIFont.systemFontOfSize(CGFloat) →UIFont.systemFont(ofSize: CGFloat)
• CGRectMake→CGRect(x: , y:) CGPointMake→CGPoint(x: , y: , width: , height:) • NSIndexPath(forRow: 0, inSection: 0) →IndexPath(row: 0, section: 0)
ରԠͷίπ • ஔscriptΛ࡞͓ͬͯ͘ͱྑ͍ • ৽͘͠ݟ͚ͭͨߏจΤϥʔscriptʹஔίϚϯυ ΛՃ࣮ͯ͠ߦΛ܁Γฦ͢ • ҙ֎ͱػցతʹஔͰ͖Δͱ͜Ζଟ͍ • ͠ΐ͏ͳ͍ΤϥʔͳΔࣗ͘ಈԽͰରԠ
େมͳͷϥΠϒϥϦ
Bolts • BFTask<AnyObject>(result: hoge)ͰArrayΛฦͤ ͳ͍ • AnyObject͕protocolʹͳΓɺArrayͦΕʹద ߹͍ͯ͠ͳ͍ • ํͳ͍ͷͰࠓNSArrayͰϥοϓͯ͠ฦͯ͠Δ
TZStackView • ܧঝ͍͕ͯͬͯͨ͠ɺclass͕openʹͳ͓ͬͯ ΒͣܧঝͰ͖ͳ͍ • ͳ͔ͥϨΠΞτ่͕ΕΔ
SwiftBond • v4→v5ʹͳΔʹ͋ͨͬͯ෦࣮͕ReactiveKit ʹͳͬͨ • ߏจͷॻ͖͑ͦͦ͜͜େม • ڍಈ͕ҟͳΔ • ͳ͔ͥແݶϧʔϓɻɻ
ͦͷଞࡉ͔͍ॴ • ໌ࣔతΩϟετ͕ඞཁʹ • (date as NSDate).mt_hourOfDay() • ͓Αͦ100Օॴ
ಈ࡞֬ೝ • વͳ͕ΒશମΛ֬ೝ͢Δඞཁ͕͋Δ • Ϋϥογϡ͢ΔͳΒ·ͩྑ͍ • ͠Εͬͱදࣔ͞Ε͍ͯͳ͍ͷ͋ͬͨΓ • ରԠલͷΞϓϦͱݟൺͳ͕Β֬ೝ͢Δ
·ͱΊ • ࢥͬͨҎ্ʹେมͰͨ͠ • Ϗϧυ௨͢·Ͱಈ࡞֬ೝ͕ҰͰ͖ͳ͍ • ϥΠϒϥϦʹΑͬͯ݁ߏڍಈ͕มΘͬͯ·͢ • ஔscriptΛ༻ҙ͢Δͱྑͦ͞͏
དྷͷSwift 4 Ͱ ָʹͳΔͣ