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
決定版!?OSSアプリプロジェクトでのBeta版アプリ配布の方法「Xcode Cloud + ...
Search
ry-itto
October 24, 2023
Programming
0
360
決定版!?OSSアプリプロジェクトでのBeta版アプリ配布の方法「Xcode Cloud + TestFlight」
ry-itto
October 24, 2023
Tweet
Share
More Decks by ry-itto
See All by ry-itto
CA.swift#14
ryitto
3
5.5k
swift-argument-parserで 簡単 CLI ツール作り
ryitto
1
150
Data Essentials in SwiftUI
ryitto
1
490
Composable Architecture
ryitto
0
780
CollectionViewの 新しいレイアウトの作り方
ryitto
0
52
Swift5.1 SwiftUI
ryitto
0
130
Other Decks in Programming
See All in Programming
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.4k
RDoc meets YARD
okuramasafumi
4
170
アセットのコンパイルについて
ojun9
0
120
Navigating Dependency Injection with Metro
zacsweers
3
230
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
230
Testing Trophyは叫ばない
toms74209200
0
850
請來的 AI Agent 同事們在寫程式時,怎麼用 pytest 去除各種幻想與盲點
keitheis
0
110
知っているようで知らない"rails new"の世界 / The World of "rails new" You Think You Know but Don't
luccafort
PRO
1
100
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
140
rage against annotate_predecessor
junk0612
0
160
MCPで実現するAIエージェント駆動のNext.jsアプリデバッグ手法
nyatinte
7
1.1k
AI Coding Agentのセキュリティリスク:PRの自己承認とメルカリの対策
s3h
0
200
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Designing for humans not robots
tammielis
253
25k
Navigating Team Friction
lara
189
15k
Facilitating Awesome Meetings
lara
55
6.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
13k
Scaling GitHub
holman
463
140k
BBQ
matthewcrist
89
9.8k
The Cult of Friendly URLs
andyhume
79
6.6k
How GitHub (no longer) Works
holman
315
140k
Done Done
chrislema
185
16k
Transcript
'BO5FDIຊ෦'BOCBTFࣄۀ෦ҏ౻྇ ܾఆ൛ʂʁ044ΞϓϦϓϩδΣΫτͰ ͷ#FUB൛ΞϓϦͷํ๏ ʮ9DPEF$MPVE 5FTU'MJHIUʯ !$"TXJGU
ࣗݾհ w ໊લҏ౻྇ w ॴଐגࣜձࣾ$ZCFS"HFOU'BO5FDIຊ෦'BOCBTFࣄۀ෦ w ৬छ'MVUUFSΤϯδχΞ w ࣾ֎J04%$ίΞελοϑ %SPJE,BJHJ"QQJ04-FBE
w झຯΟεΩʔ '14 w *%SZJUUP ϋΠϑϯμϝܥ SZ@JUUP
ࣗݾհ ࠷ۙͬͯΔ͜ͱ
⚠ҙࣄ߲⚠ w ʮܾఆ൛ʯͱ͍͏ݴ༿͕λΠτϧʹؚ·Ε͍ͯ·͕͢ࣄྫͷڞ༗ʹͳΓ·͢ w ΑΓվળͰ͖ͦ͏ͳΞΠσΞɾ͝ҙݟେܴͰ͢ʢདྷ׆༻͠·͢ʣ w ʢূ໌ॻपΓɾपΓ·ͩ·ͩࣗͷ͕ࣝΓͳ͍ʣ w ۀͷ༰Ͱ͋Γ·ͤΜ w
-5ఆͩͬͨͷͰૣ͘ऴΘΔ߹͕͋Γ·͢
044ɺͬͯΔਓ🙋
݁ߏଟ͍ͱࢥ͍·͢
͜͜ͰৼΓฦΓ 044ͱ IUUQTKBXJLJQFEJBPSHXJLJ &""&#$&&#&#%&#$&#&#%& &&"&"&"&"&#"&$&#"&#%
044ͲΜͳ࣌ʹ͏ʁ
044ͲΜͳ࣌ʹ͍ͬͯΔʁ w ϥΠϒϥϦ w $-*πʔϧ w ΞϓϦέʔγϣϯ w ϓϩάϥϛϯάݴޠ ͳͲͳͲ
044ͷΞϓϦҙ֎ͱ͋Δ w LJDLTUFSUFS w 8JLJQFEJB w 'JSF'PY ͳͲͳͲ
ࠓճͷ༰ ࣗͷϦʔυ͍ͯ͠Δͱ͋ΔΞϓϦͰͷྫͰ͢
044ΞϓϦέʔγϣϯͷಛ w ࣮ࡍʹಈ͔͞ͳ͍ͱΘ͔Βͳ͍෦͕͋Δ ؾܰʹࢼ͢͜ͱͷͰ͖Δಋઢ͕ඞཁ w ΞϓϦετΞಋઢ w #FUB൛ಋઢ w ͳͲͳͲ
044ΞϓϦέʔγϣϯΛࢼ͢ʹ w 8FCϓϨϏϡʔͰσϓϩΠͨ͠ઌͷ63-Λ༻ҙ͢Δ w ΞϓϦ w "OESPJE BQLΛ͢Δɺ%FQMPZ(BUFͳͲΛར༻ͯ͢͠Δ w J04🤔
JQBʜ %FQMPZ(BUFͳͲͷϓϥοτϑΥʔϜɻɻʁ
044ΞϓϦέʔγϣϯΛࢼ͢ʹ J04ͷ߹ w JQBʢϏϧυޙͷΞϓϦϑΝΠϧʣ w खܰʹࢼ͢͜ͱ͕Ͱ͖ͳ͍ w %FQMPZ(BUFͳͲͷϓϥοτϑΥʔϜɻɻʁ w ํ๏࣍ୈͰ্ݶ͕͙͢དྷͯ͠·͏
w ڞ௨ w ূ໌ॻͷ
044ΞϓϦέʔγϣϯΛࢼ͢ʹ J04ͷ߹ ূ໌ॻͷ w ূ໌ॻެ։͠ͳ͍ํ͕ྑ͍ w $*ͷ4FDSFU͘Β͍ w ཧͲ͏͢Δ͔ʁ w
044ͷதͰܧଓతʹϝϯς͢Δਓ͕ඞཁ w ༗ޮظݶ͕དྷͨ࣌ʹߋ৽͢Δ͜ͱ͕ඞཁ
J04044ΞϓϦͷ՝ w େ͖͚ͯ͘ೋͭ w ํ๏ͷ w ূ໌ॻͷ
J04044ΞϓϦͷ՝ ैདྷͷख๏ͰແཧཧΖ͏ͱ͢Δͱʢূ໌ॻฤʣ w ূ໌ॻʢ DFSʣΛ"QQMF%FWFMPQFSαΠτͰ࡞ʢ༗ޮظݶ͋Γʣ w 1SPWJTJPOJOH1SP fi MFʢ NPCJMFQSPWJTJPOʣΛ࡞
w ҙͷཧํ๏ͰཧʢGBTUMBOFNBUDIͳͲʣ w ͳͲͳͲ w $*্ͰϏϧυલʹ࡞ͬͨূ໌ॻɾ1SPWJTJPOJOH1SP fi MFͳͲΛμϯϩʔυͯ͠ద༻͢Δ w ৽نςελʔ͕૿͑Δͨͼʹূ໌ॻʹରͯ͠%FWJDFΛొ͠ɺূ໌ॻΛ࠶ੜͯ͠γʔΫϨο τΛߋ৽ʢඞཁͳΒʣ͢Δ w ্ݶ
J04044ΞϓϦͷ՝ ैདྷͷख๏ͰແཧཧΖ͏ͱ͢Δͱʢূ໌ॻฤʣ ҙͷอଘॴ ҙͷखஈ
J04044ΞϓϦͷ՝ ैདྷͷख๏ͰແཧཧΖ͏ͱ͢Δͱʢূ໌ॻฤʣ ҙͷอଘॴ ҙͷखஈ ͬͯΈ͍ͨʂʂ
J04044ΞϓϦͷ՝ ैདྷͷख๏ͰແཧཧΖ͏ͱ͢Δͱʢূ໌ॻฤʣ ҙͷอଘॴ ҙͷखஈ 0,%FWJDF*% ͍ͩ͘͞ʂ
J04044ΞϓϦͷ՝ ैདྷͷख๏ͰແཧཧΖ͏ͱ͢Δͱʢূ໌ॻฤʣ ҙͷอଘॴ ҙͷखஈ G&&YYYYYYYYY EPYYYYYYYYY 💦
J04044ΞϓϦͷ՝ ैདྷͷख๏ͰແཧཧΖ͏ͱ͢Δͱʢূ໌ॻฤʣ ҙͷอଘॴ ҙͷखஈ G&&YYYYYYYYY EPYYYYYYYYY ࠶ੜ6QMPBE 💦 💦
J04044ΞϓϦͷ՝ ैདྷͷख๏ͰແཧཧΖ͏ͱ͢Δͱʢূ໌ॻฤʣ ҙͷอଘॴ ҙͷखஈ μϯϩʔυͰ ͖ΔΑ͏ʹͳΓ ·ͨ͠ʂ 💦 💦 💦
🎉
J04044ΞϓϦͷ՝ ূ໌ॻͷ՝ʢಛʹ044ʣ ҙͷอଘॴ ҙͷखஈ
J04044ΞϓϦͷ՝ ূ໌ॻͷ՝ʢಛʹ044ʣ ҙͷอଘॴ ҙͷखஈ
J04044ΞϓϦͷ՝ ূ໌ॻͷ՝ʢಛʹ044ʣ ҙͷอଘॴ ҙͷखஈ ηΩϡϦςΟͷ ਓͷ
J04044ΞϓϦͷ՝ ূ໌ॻͷ՝ʢηΩϡϦςΟͷʣ w (JU)VC"DUJPOTͷXPSL fl PXUSJHHFSɺηΩϡϦςΟपΓͷઃఆϛεʹΑΔূ ໌ॻ࿙ӮͷՄೳੑ w 'PSL͕հɻ13্ͳΓͰɺ֘γʔΫϨοτʹΞΫηε͢ΔΑ͏ͳϫʔ ΫϑϩʔΛվม͠ɺ࣮ߦͰ͖ΔΑ͏ʹ͍͚ͯ͠ͳ͍ʢJ04ʹݶΒͣॏཁ
ͳγʔΫϨοτΛѻ͏ͷͰڞ௨ʣ w QVMM@SFRVFTU@UBSHFUͳͲͷτϦΨʔΛ׆༻͙ͯ͠
J04044ΞϓϦͷ՝ ূ໌ॻͷ՝ʢਓͷʣ w ূ໌ॻΛཧ͢ΔਓΛͲ͏͢Δ͔ w ೖΕସΘΔ͜ͱϓϩδΣΫτ࣍ୈͰԟʑʹͯ͋͠Δ w ୭͕"QQMF%FWFMPQFSͷϝϯόʔγοϓΛ͏͔
J04044ΞϓϦͷ՝ ैདྷͷख๏ͰແཧཧΖ͏ͱ͢Δͱʢฤʣ w J1IPOF্ͰʮઃఆʯΞϓϦ͔Βಛผͳૢ࡞͕ඞཁʹͳΔ w ઌͷ্ݶ͕͍ͩͿݶΒΕͯ͠·͏ w ࣗલͰΞοϓϩʔυͷTDSJQUΛॻ͔ͳ͍ͱ͍͚ͳ͍ w େͨ͠Ͱͳ͍
J04044ΞϓϦͷ՝ ैདྷͷख๏ͰແཧཧΖ͏ͱ͢Δͱʢฤʣ w J1IPOF্ͰʮઃఆʯΞϓϦ͔Βಛผͳૢ࡞͕ඞཁʹͳΔ w ઌͷ্ݶ͕͍ͩͿݶΒΕͯ͠·͏ w ࣗલͰΞοϓϩʔυͷTDSJQUΛॻ͔ͳ͍ͱ͍͚ͳ͍ w େͨ͠Ͱͳ͍
J04044ΞϓϦͷ՝ w ͷ w ূ໌ॻͷ w ਓͷ ʮ9DPEF$MPVE 5FTU'MJHIUʯͰղܾ
֤छπʔϧʹ͍ͭͯ w 5FTU'MJHIU w 9DPEF$MPVE
֤छπʔϧʹ͍ͭͯ w 5FTU'MJHIU w 9DPEF$MPVE
5FTU'MJHIU w "QQMFఏڙͷαʔϏε w ΞϓϦͷͨΊͷαʔϏε w %FQMPZ(BUF 'JSFCBTF"QQ%JTUSJCVUJPOʹࣅͨͷ w ̎௨Γͷํ๏͕༻ҙ͞Ε͍ͯΔ
w ෦ςελʔʢ%FWFMPQFSΞΧϯτ৫͚ʣ w ֎෦ςελʔʢQVCMJDMJOL ҙͷϝʔϧΞυϨεͰটͰ͖Δͷʣ w ্ݶ ਓ
5FTU'MJHIU w "QQMFఏڙͷαʔϏε w ΞϓϦͷͨΊͷαʔϏε w %FQMPZ(BUF 'JSFCBTF"QQ%JTUSJCVUJPOʹࣅͨͷ w ̎௨Γͷํ๏͕༻ҙ͞Ε͍ͯΔ
w ෦ςελʔʢ%FWFMPQFSΞΧϯτ৫͚ʣ w ֎෦ςελʔʢQVCMJDMJOL ҙͷϝʔϧΞυϨεͰটͰ͖Δͷʣ w ্ݶ ਓ
5FTU'MJHIU
5FTU'MJHIU
5FTU'MJHIU
֤छπʔϧʹ͍ͭͯ w 5FTU'MJHIU w 9DPEF$MPVE
9DPEF$MPVE w "QQMFఏڙͷαʔϏε w (JU)VC"DUJPOT$JSDMF$*ͷΑ͏ͳ$*$%αʔϏε w J04ͷϏϧυΞʔΧΠϒԽɾ5FTU'MJHIUͷ·ͰͷϫʔΫϑϩʔ͕ (6*Ͱ݁ͯ͠࡞Ͱ͖Δʢ9DPEFPS"QQ4UPSF$POOFDUʣ w ࠷৽ͷ9DPEF͕ग़ͨλΠϛϯά͔Β༻Ͱ͖Δ
w 9DPEF$MPVE্ͰϏϧυ͢Δ͜ͱʹΑΓɺଞ$*αʔϏεΛར༻ͨ࣌͠ʹඞ ཁͳূ໌ॻͷखಈཧ͕ෆཁʹ
9DPEF$MPVE 8PSL fl PXͷઃఆ
9DPEF$MPVE 8PSL fl PXͷઃఆ
9DPEF$MPVE 8PSL fl PXͷઃఆ
9DPEF$MPVE 8PSL fl PXͷઃఆ
J04044ΞϓϦͷ՝ w ͷ w 5FTU'MJHIUͰղܾ🎉 w ূ໌ॻͷ w 9DPEF$MPVEͰղܾ🎉
J04044ΞϓϦͷ՝ վળޙ
J04044ΞϓϦͷ՝ վળޙ ͬͯΈ͍ͨʂʂ
J04044ΞϓϦͷ՝ վળޙ 0,͜ͷϦϯΫ ͔ΒΠϯετʔ ϧͯ͠Ͷʂ
J04044ΞϓϦͷ՝ վળޙ IUUQTUFTU fl JHIUBQQMFDPNKPJOYYYY
J04044ΞϓϦͷ՝ վળޙ 🎉 🎉
ख๏ͷσϝϦοτ w 5FTU'MJHIU w ্ݶʢΑͬΆͲͷ͜ͱ͕ͳ͍ݶΓجຊతʹ͑ͳ͍ʣ w ͗͢͠ΔͱͰ͖ͳ͘ͳΔ w ৹ࠪ w
9DPEF$MPVE w ར༻ྉʢ݄ͷແྉ͕͋ΔͷͰɺͦΕΛ͑Δ߹ʣ w 9DPEF$MPVEಛ༗ͷಈ࡞ࠩҟʢ৭ʑɻɻ͋Γ·͢ɻɻɻʣ w ϫʔΫϑϩʔͷॊೈੑ͕͍
044J04ΞϓϦΛ͢Δࡍʹ ͥͻ͓ࢼ͋͠Ε👏