Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ライブラリとSwiftLintの辛いお話
Search
Kohei Tabata
February 14, 2017
Programming
2
1.2k
ライブラリとSwiftLintの辛いお話
Kohei Tabata
February 14, 2017
Tweet
Share
More Decks by Kohei Tabata
See All by Kohei Tabata
AIと協業する開発の進め方
nerd0geek1
0
140
営業活動なしで継続的に案件を受注する方法 / how to get a contract without sales as a freelance
nerd0geek1
2
950
生体データを取り扱うアプリ開発の勘所
nerd0geek1
1
120
動線改善とステータス可視化で家庭内のストレスを軽減した話
nerd0geek1
3
4.4k
家庭をプロジェクトとして運営した話
nerd0geek1
2
4.3k
fastlaneの勉強会を主催して学んだこと、得たこと、悩んだこと
nerd0geek1
1
1.1k
みんなで育てるprecheck
nerd0geek1
1
780
matchとは?match導入のメリット
nerd0geek1
4
600
Improve your workflow with Sketch plugin
nerd0geek1
3
1.5k
Other Decks in Programming
See All in Programming
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
2.2k
dotfiles 式年遷宮 令和最新版
masawada
1
730
ViewファーストなRailsアプリ開発のたのしさ
sugiwe
0
430
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
200
20 years of Symfony, what's next?
fabpot
2
340
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
120
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
210
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
580
AWS CDKの推しポイントN選
akihisaikeda
1
240
20251127_ぼっちのための懇親会対策会議
kokamoto01_metaps
2
420
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
26
22k
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
120
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
How GitHub (no longer) Works
holman
316
140k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Balancing Empowerment & Direction
lara
5
790
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The Invisible Side of Design
smashingmag
302
51k
Building an army of robots
kneath
306
46k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Code Review Best Practice
trishagee
74
19k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
ϥΠϒϥϦͱSwiftLintͷ ਏ͍͓ 2017/02/14 SwiftѪձ@21Cafe
ࣗݾհ ɾKohei Tabata(@nerd0geek1) ɾSaib Studio LLC ɾiOS/MacOS/tvOS Developer ɾWAmazingɹɹ ͱ͍͏ελʔτΞοϓͰ
ɹiOSΞϓϦ։ൃͷ͓ख͍ Said Studio LLC Kohei Tabata Next! Remote quick-zip plus
Έͳ͞Μɺ Swift͖Ͱ͢ΑͶʁ
ϥΠϒϥϦ ॻ͍ͨΓ͠·͢ΑͶʁ
ͦͯ͠ɺ SwiftLint͖Ͱ͢ΑͶʁ
Agenda ɾSwiftLintͱ ɾϥΠϒϥϦಋೖ͢Δࡍͷམͱ݀͠ ɾͭΒΈ ɾAggregateΛ׆༻ͯ͠ ɾ·ͱΊ
SwiftLintͱ ɾSwiftLintͱɺRealm͕ࣾ։ൃɾӡ༻͍ͯ͠ΔSwift༻ͷLintπʔϧ ɾSwiftʹର͔ͯ͠ͳΓଟ͘ͷछྨͷLintΛ࣮ߦ͢Δ͜ͱ͕Ͱ͖Δ ɹɾforce_unwrapΛߦ͍ͬͯΔՕॴΛΤϥʔͱ͢Δ ɹɾΫϥεɺϑΝΠϧͷߦʹԠͯ͡ܯࠂɺΤϥʔΛදࣔ ɹɾetc… ɾৄ͍͠ΧελϚΠζ.swiftlint.ymlΛฤू͢Δ͜ͱͰՄೳ
ϥΠϒϥϦಋೖ͢Δࡍͷམͱ݀͠ SwiftLintΛϥΠϒϥϦಋೖ͢Δࡍʹɺ௨ৗͷΞϓϦͱಉ༷ͷํ๏Ͱಋೖͯ͠͠·͏ͱ ϥΠϒϥϦͷར༻ऀ͕ਏ͘ͳΔέʔε͕ଘࡏ͢Δ(mixpanel-swiftͰମݧ)
ϥΠϒϥϦಋೖ͢Δࡍͷམͱ݀͠ SwiftLintΛϥΠϒϥϦಋೖ͢Δࡍʹɺ௨ৗͷΞϓϦͱಉ༷ͷํ๏Ͱಋೖͯ͠͠·͏ͱ ϥΠϒϥϦͷར༻ऀ͕ਏ͘ͳΔέʔε͕ଘࡏ͢Δ(mixpanel-swiftͰମݧ) ϥΠϒϥϦͷSwiftLintͷόʔδϣϯͱϢʔβʔͷSwiftLintͷόʔδϣϯ͕ҟͳΔ߹
ϥΠϒϥϦಋೖ͢Δࡍͷམͱ݀͠ SwiftLintΛϥΠϒϥϦಋೖ͢Δࡍʹɺ௨ৗͷΞϓϦͱಉ༷ͷํ๏Ͱಋೖͯ͠͠·͏ͱ ϥΠϒϥϦͷར༻ऀ͕ਏ͘ͳΔέʔε͕ଘࡏ͢Δ(mixpanel-swiftͰମݧ) ϥΠϒϥϦɿ0.13.2 Ϣʔβʔɹɿ0.13.2 ϥΠϒϥϦͷSwiftLintͷόʔδϣϯͱϢʔβʔͷSwiftLintͷόʔδϣϯ͕ҟͳΔ߹
ϥΠϒϥϦಋೖ͢Δࡍͷམͱ݀͠ SwiftLintΛϥΠϒϥϦಋೖ͢Δࡍʹɺ௨ৗͷΞϓϦͱಉ༷ͷํ๏Ͱಋೖͯ͠͠·͏ͱ ϥΠϒϥϦͷར༻ऀ͕ਏ͘ͳΔέʔε͕ଘࡏ͢Δ(mixpanel-swiftͰମݧ) ϥΠϒϥϦɿ0.13.2 Ϣʔβʔɹɿ0.13.2 ϥΠϒϥϦͷSwiftLintͷόʔδϣϯͱϢʔβʔͷSwiftLintͷόʔδϣϯ͕ҟͳΔ߹
ϥΠϒϥϦಋೖ͢Δࡍͷམͱ݀͠ SwiftLintΛϥΠϒϥϦಋೖ͢Δࡍʹɺ௨ৗͷΞϓϦͱಉ༷ͷํ๏Ͱಋೖͯ͠͠·͏ͱ ϥΠϒϥϦͷར༻ऀ͕ਏ͘ͳΔέʔε͕ଘࡏ͢Δ(mixpanel-swiftͰମݧ) ϥΠϒϥϦɿ0.13.2 Ϣʔβʔɹɿ0.13.2 ϥΠϒϥϦɿ0.13.2 Ϣʔβʔɹɿ0.16.0 ϥΠϒϥϦͷSwiftLintͷόʔδϣϯͱϢʔβʔͷSwiftLintͷόʔδϣϯ͕ҟͳΔ߹
ϥΠϒϥϦಋೖ͢Δࡍͷམͱ݀͠ SwiftLintΛϥΠϒϥϦಋೖ͢Δࡍʹɺ௨ৗͷΞϓϦͱಉ༷ͷํ๏Ͱಋೖͯ͠͠·͏ͱ ϥΠϒϥϦͷར༻ऀ͕ਏ͘ͳΔέʔε͕ଘࡏ͢Δ(mixpanel-swiftͰମݧ) ϥΠϒϥϦɿ0.13.2 Ϣʔβʔɹɿ0.13.2 ϥΠϒϥϦɿ0.13.2 Ϣʔβʔɹɿ0.16.0 ϥΠϒϥϦͷSwiftLintͷόʔδϣϯͱϢʔβʔͷSwiftLintͷόʔδϣϯ͕ҟͳΔ߹
ͭΒΈͷݪҼ ઌఔͷͳͥൃੜͯ͠͠·͔ͬͨʁ →Ϗϧυ࣌ʹͷΈ࣮ߦ͍ͨ͠Script͕Archive࣌ʹ࣮ߦ͞Εͯ͠·͍ͬͯͨ͜ͱ ཧ ݱঢ়
None
Aggregateͱʁ ɾBuild PhaseΛཧ͢ΔͨΊͷͷ ɹAdd Target > Cross-platform > Aggregate͔ΒՃՄೳɻ
Aggregateͷ׆༻๏ ɾRealmͷϓϩδΣΫτͰɺSwiftLintͷScriptͷΈΛؚΉAggregateΛՃ͠ɺ ɹͦΕΛݺͼग़͢Α͏ʹͯ͠ར༻͍ͯ͠Δɻ
Aggregateͷ׆༻๏ ɾϥΠϒϥϦຊମͷBuild SchemeΛฤू͠ɺϏϧυ࣌(ΞʔΧΠϒ࣌)ʹͷΈ ɹSwiftLint͕ΔΑ͏ʹ͢Δ͜ͱͰ͖Δ
·ͱΊ ɾSwiftLintʹΑΓɺιʔείʔυΛखܰʹ੍ޚ͢Δ͜ͱ͕Ͱ͖Δ ɾͦͷ໘ɺࠓճͷΑ͏ͳʹ໘͢Δ͜ͱɻ ɾAggregateΛར༻͢Δ͜ͱͰରԠՄೳ ɾAggregateࠓճͷҎ֎ʹ෯͘Ԡ༻Ͱ͖ΔͷͰɺ ɹࠓޙͦͷΛௐ͍͖͍ͯͨɻ
࠷ޙʹએ 2/21ʹOrigami͞ΜͰfastlaneษڧձΓ·͢ʂ
WAmazingͰiOSΤϯδχΞΛืू͍ͯ͠·͢ʂ We are hiring!! They
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
ࢀߟ ɾManaging Xcode ɹ(https://pewpewthespells.com/blog/managing_xcode.html#target-agg) ɾSwiftLint ɹ(https://github.com/realm/SwiftLint) ɾmixpanel-swift ɹ(https://github.com/mixpanel/mixpanel-swift/issues/57) ɾrealm-cocoa ɹ(https://github.com/realm/realm-cocoa)