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
150
効率アップ! モバイルアプリの開発プロセス における自動化
Takuya Ohsawa
October 24, 2024
Tweet
Share
More Decks by Takuya Ohsawa
See All by Takuya Ohsawa
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
110
Firebaseイベントログの動作確認を効率化する話
takuyaosawa
0
350
iOS18とヘルスケアの睡眠対応
takuyaosawa
0
150
with_iosで開発をスムーズにするためにやったこと
takuyaosawa
0
68
サーバサイドswift動かして見た
takuyaosawa
0
74
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Gamification - CAS2011
davidbonilla
80
5.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Code Reviewing Like a Champion
maltzj
521
39k
KATA
mclloyd
29
14k
How GitHub (no longer) Works
holman
312
140k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
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