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
potatotips#8 Swiftのライブラリを作成/利用しよう
Search
tokorom
August 20, 2014
Programming
7
3.6k
potatotips#8 Swiftのライブラリを作成/利用しよう
Objective-CじゃなくてSwiftのライブラリを利用する方法、また、自分で作る方法
tokorom
August 20, 2014
Tweet
Share
More Decks by tokorom
See All by tokorom
続・SharePlayの歴史と進化 iOS18とApple Vision Proにおける新展開
tokorom
3
560
SharePlayの歴史と進化 そしてvisionOSへ (iOSDC 2023)
tokorom
2
880
5分でSharePlay入門
tokorom
2
1.4k
HomeKit 2020
tokorom
7
2.4k
Advanced Segue 2019年のSegue事情
tokorom
9
5.8k
tvOSアプリUIの勘所
tokorom
1
2k
カッコ悪くリアクティブじゃダメですか?
tokorom
7
12k
古き良きsendAction (in potatotips #26)
tokorom
1
3.6k
画面遷移と私(iOS)
tokorom
4
3.7k
Other Decks in Programming
See All in Programming
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
Jakarta EE meets AI
ivargrimstad
0
620
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
170
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
Contemporary Test Cases
maaretp
0
140
macOS でできる リアルタイム動画像処理
biacco42
9
2.4k
どうして僕の作ったクラスが手続き型と言われなきゃいけないんですか
akikogoto
1
120
距離関数を極める! / SESSIONS 2024
gam0022
0
290
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
Ethereum_.pdf
nekomatu
0
470
OnlineTestConf: Test Automation Friend or Foe
maaretp
0
120
イベント駆動で成長して委員会
happymana
1
340
Featured
See All Featured
Ruby is Unlike a Banana
tanoku
97
11k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
How GitHub (no longer) Works
holman
310
140k
It's Worth the Effort
3n
183
27k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
900
YesSQL, Process and Tooling at Scale
rocio
169
14k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Transcript
SwiftͰΞϓϦ։ൃ #1 SwiftͷϥΠϒϥϦΛ࡞/ར༻͠Α͏ Yuta ToKoRo iOS App Programer potatotips #8
ॴ༑ଠ @tokorom
ࠓ͜ͷ͋ͨΓʹ͍ͭͯ •SwiftͰطଘͷObjective-CͷϥΠϒϥϦΛ͏ ใͨ͘͞Μ͋Δ͕ɺSwiftͷϥΠϒϥϦʹͭ ͍ͯ͋·Γใ͕ͳ͍͚ͲͲ͏Δͷʁ •CocoaPodsݱঢ়͑ͳ͍ͷͰͲ͏͠Α͏ʁ •ࣗͰϥΠϒϥϦ࡞Δͱ͖Ͳ͏͠Α͏ʁ
SwiftͷϥΠϒϥϦΛͬͯΈΔ •Quick͕Φεεϝ •https://github.com/Quick/Quick •ςετίʔυ༻ϥΠϒϥϦʢKiwiͷSwift൛ʣ •Objective-CͷϓϩδΣΫτͰςετ͚ͩQuickͱ͍͏ ͷΞϦ͔͠Εͳ͍ •READMEʹΠϯετʔϧͷ͔͕ͨ͠ॻ͍ͯ͋Δ •Nimbleͱ͍͏ผͷϥΠϒϥϦ͍ͬͯΔͨΊͦ͏͍͏ ߏͷϥΠϒϥϦΛ͏ʢ࡞Δʣ࿅शʹͳΔ
QuickͷΠϯετʔϧํ๏ •QuickͱNimbleΛclone͢Δ •ࣗͷϓϩδΣΫτʹ Quick.xcodeproj ͱ Nimble.xcodeproj ΛAdd͢Δ •ςετ༻ͷTargetʹ͚ͩνΣοΫ͢Δ
QuickͷΠϯετʔϧํ๏ •ςετ༻Targetͷ Link Binary With Libraries ʹ Quick.framework ͱ Nimble.framework
Λ Ճ͑Δ
QuickͷΠϯετʔϧํ๏ •͋ͱSpecΛॻ͍ͯ͏͚ͩʂ
ϥΠϒϥϦΛ͏ͱ͖ͷ·ͱΊ •ϥΠϒϥϦͷxcodeprojΛϓϩδΣΫτʹՃ •ϥΠϒϥϦͷframeworkΛ Link Binary With Libraries ʹՃ •͜ͷͱ͖ϥΠϒϥϦ͕͍ͬͯΔϥΠϒϥϦ ҰॹʹՃ͢Δඞཁ͕͋Δ
CocoaPods͕͑ͳ͍ʁ •ࠓͷͱ͜ΖSwiftͷϥΠϒϥϦʹ͑ͳ͍ •git submoduleΛ͍·͠ΐ͏ •git submoduleͰऔಘͨ͠ϑΝΠϧͷதͰ QuickͱNimbleͷxcodeprojΛϓϩδΣΫτʹ Add͢ΕOK
git submoduleʹ͓ͯ͘͠ϝϦοτ •ຊՈ͕ߋ৽͞ΕͨΒ͙͢ʹupdateͰ͖Δ •Xcodeͷbeta൛UpdateʹΑΓຊ͕݅ར༻Ͱ͖ ͳ͍ͱ͖ʹࣗͷforkઌʹܨ͗ม͑ΔɺͩΕ͔ ͕forkઌͰमਖ਼ࡁΈͳΒͦ͜ʹΓସ͑Δɺͱ ͍ͬͨ͜ͱ͕༰қ •طଘͷObjective-CͷϥΠϒϥϦͷΑ͏ʹෳࡶ ͳઃఆ͕ඞཁͳ͍ͷͰࠓͷͱ͜ΖsubmoduleͰ ಛʹࠔ͍ͬͯͳ͍
SwiftͷϥΠϒϥϦΛ࡞ͬͯΈΑ͏ •ϓϩδΣΫτΛ࡞Δͱ͖ Cocoa Touch Framework Λબ͢Δ
SwiftͷϥΠϒϥϦΛ࡞ͬͯΈΑ͏ •ϥΠϒϥϦ໊.h ͕Ͱ͖ΔͷͰɺObjective-C ίʔυ͏߹ʹͦ͜Ͱ import
SwiftͷϥΠϒϥϦΛ࡞ͬͯΈΑ͏ •importͨ͠ϔομʔ Public ଐੑʹ͢Δ
SwiftͷϥΠϒϥϦΛ࡞ͬͯΈΑ͏ •Build Phasesͷઃఆ ͍ͬͯΔϥΠϒϥϦΛ ͜͜ʹՃ Ϗϧυ࣌ʹґଘϥΠϒϥ ϦϏϧυ͍ͨ͠߹ ͜͜ʹՃ
SwiftͷϥΠϒϥϦΛ࡞ͬͯΈΑ͏ •ςετ༻TargetͷBuild Phasesͷઃఆ ϥΠϒϥϦ͕͍ͬͯΔ ϥΠϒϥϦ ςετ͢ΔϥΠϒϥϦࣗମ ςετ༻ϥΠϒϥϦ
Enjoy Swift :)
More Information Yuta ToKoRo! iOS App Programer! ! @tokorom! http://www.tokoro.me/