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
効率アップ! モバイルアプリの開発プロセス における自動化
Search
Takuya Ohsawa
October 24, 2024
0
220
効率アップ! モバイルアプリの開発プロセス における自動化
Takuya Ohsawa
October 24, 2024
Tweet
Share
More Decks by Takuya Ohsawa
See All by Takuya Ohsawa
Kotlin補完計画 〜KMP(Kotlin Multiplatform)とAIが導く越境と補完の未来〜
takuyaosawa
0
520
iOSでスクリーンショットテストを導入した話
takuyaosawa
0
180
なぜ、あすけんiOSでテスト戦略を導入したのか?
takuyaosawa
0
210
技術選定 askenでの取り組み Kotlin Multiplatform編
takuyaosawa
0
130
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
420
Firebaseイベントログの動作確認を効率化する話
takuyaosawa
0
590
iOS18とヘルスケアの睡眠対応
takuyaosawa
0
360
with_iosで開発をスムーズにするためにやったこと
takuyaosawa
0
92
サーバサイドswift動かして見た
takuyaosawa
0
91
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
97
Paper Plane (Part 1)
katiecoart
PRO
0
2.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Practical Orchestrator
shlominoach
190
11k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
77
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
870
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
140
How GitHub (no longer) Works
holman
316
140k
Test your architecture with Archunit
thirion
1
2.1k
Transcript
ޮΞοϓ! ϞόΠϧΞϓϦͷ։ൃϓϩηε ʹ͓͚ΔࣗಈԽ Takuya Osawa 2024/10/24
ࣗݾհ Takuya Osawa • גࣜձࣾasken ϞόΠϧςοΫϦʔυ • SwiftKotlin • ओͳࣄ
• iOS൛ ৯ࣄཧΞϓϦͷʮ͚͋͢Μʯͷ։ൃΛ୲ • झຯ • ٿ؍ઓ
ΞδΣϯμ • ͳͥɺࣗಈԽ͕ඞཁ͔ʁ • ࣮ࡍͷऔΓΈ • ՌɺࠓޙΓ͍ͨ͜ͱ
ࣗಈԽ͕ඞཁͳཧ༝ • ࣭ਫ਼Λอͭ • ਓʹΑͬͯΒ͖ͭ • ৫Λେ͖͘͢Δ • ϊϋΛԣల։͢Δ •
։ൃαΠΫϧͷޮԽ • ܁Γฦ͢
ϞόΠϧ։ൃϓϩηε ઃܭ ࣮ ίʔυ ϨϏϡʔ ݁߹ςετ ϦάϨογϣϯ ϦϦʔε Ϣχοτςετ ৹ࠪఏग़
ઃܭ × 3 ࣮ × 3 ίʔυ ϨϏϡʔ × 3
݁߹ςετ × 3 ϦάϨογϣϯ ϦϦʔε Ϣχοτςετ × 3 ৹ࠪఏग़ 3ਓͷέʔε
खಈͰΔͷ େม🙀 • ࣭ਫ਼Λอͭ • ৫Λେ͖͘͢Δ • ։ൃαΠΫϧͷޮԽ
askenͰͷ ࣗಈԽͷࣄྫ
νʔϜঢ়گڥ • 2023͔ΒiOSΤϯδχΞ 1ਓ͔Β3ਓʹ૿Ճ • iOS൛͚͋͢Μʹରͯ͠ɺ̏ਓ͕ผͷػೳΛ࣮͢Δ • CIBitrise
ίʔυϨϏϡʔ • DangerΛಋೖ • SwiftLintΛ࣮ߦ • CSpellΛ͍ɺεϖϧνΣοΫΛ͢Δ
ܯࠂͷදࣔ • ΘΕ͍ͯͳ͍ίʔυͷݕ • ܯࠂͷՄࢹԽ • xcresultͷ׆༻
Ϣχοτςετ & Ϗϧυ • Ϣχοτςετͷ࣮ߦ݁ՌΛղੳ(xcresult) • ίʔυΧόϨοδ • Ϗϧυ࣌ؒ
݁߹ςετ • όΠφϦͷ • TestFlight • fastlaneͷίϚϯυΛͬͯɺΞοϓϩʔυ • όʔδϣϯ͕ඃΒͳ͍Α͏ʹͳͲΛΈ߹Θͤͯ •
e.g. 2024.10.24 • ࣾϨϏϡʔ༻ͷόΠφϦʹݟ͚͕͚ͭΕΔΑ͏ʹΞΠίϯΛՃ • ImageMagicΛͬͯҙͷจࣈྻΛ༩ • ΞΠίϯมߋ͕͋ͬͯຊ൪ʹӨڹ͕ग़ͳ͍
ϦϦʔε߲ͷ֬ೝ • git-pr-release • DevelopϒϥϯνʹϚʔδͷλΠϛϯάߋ৽ • PRͷλΠτϧʹؚ·ΕΔจࣈྻͰఆ • ؚ·Εͳ͍߹DangerͰݕ͢Δ
ϧʔνϯ࡞ۀ • ϥΠϒϥϦΞοϓσʔτ • CIͷεέδϡʔϧϏϧυΛ׆༻ • CocoaPodsgemͰ͍ͬͯΔϥΠϒϥϦΛΞοϓσʔτ
ࢹ • ৹ࠪঢ়گͷࢹ • GmailΛGoogle App ScriptΛͬͯࢹ͠ɺSlack௨͢Δ • ຊ൪༻ͷόΠφϦͷݕূ •
fastlaneͷupload_to_app_storeͷverify_onlyΛ༻ • εέδϡʔϧϏϧυͰఆظత • ৹ࠪఏग़ͷϦʔυλΠϜΛݮ • όΠφϦαΠζͷνΣοΫ • TestFlightΞοϓϩʔυ࣌ʹαΠζΛνΣοΫ͠ɺSlackʹ௨ • PR࣌ʹDangerΛͬͯɺେ͖͗͢Δը૾ϑΝΠϧʹܯࠂΛग़͢
ͨ͘͞Μ࣮ߦͯ͠ ӡ༻ίετʁ💰
CIͷϚγϯΛมߋ • Bitrise͔ΒGithub Actionsͷηϧϑϗεςουϥϯφʔมߋ • ࣮ߦճ࣌ؒΛؾʹͤͣɺ࣮ߦՄೳʹ͢ΔͨΊʹ • ձࣾʹmac miniΛߪೖ͠ɺڥΛߏங •
࣮࣭Ϛγϯߪೖ͚ͩͰӡ༻Ͱ͖ΔΑ͏ʹͳΓ·ͨ͠
Ռ
Ռͦͷ̍ ຖ݄ͷCI࣮ߦճ ̏ഒҎ্
Ռͦͷ̎ όΠφϦαΠζ ࠷େ20MBݮ 🎉 ఆظࢹʹΑͬͯ େ͖͍αΠζͷը૾͕ݮͬͨ͜ͱ͕ཁҼ
ϞόΠϧ։ൃϓϩηε ઃܭ ࣮ ίʔυ ϨϏϡʔ ݁߹ςετ ϦάϨογϣϯ ϦϦʔε Ϣχοτςετ ৹ࠪఏग़
Github Actions Danger Swiftlint Cspell fastlane Image Magic Google App Script fastlane TestFlight
ࠓޙͷΓ͍ͨ͜ͱ • MagicPodͷ׆༻ • ಋೖ͔ͯ͠Β׆༻͕͏·͘Ͱ͖͍ͯͳ͍ • ϦάϨογϣϯςετͷޮԽΛਐΊΔ • Github CopilotͳͲͷੜAIͷ׆༻
• AndroidνʔϜʹԣల։
Thank you