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
350
決定版!?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
480
Composable Architecture
ryitto
0
770
CollectionViewの 新しいレイアウトの作り方
ryitto
0
52
Swift5.1 SwiftUI
ryitto
0
130
Other Decks in Programming
See All in Programming
#QiitaBash TDDで(自分の)開発がどう変わったか
ryosukedtomita
1
350
[DevinMeetupTokyo2025] コード書かせないDevinの使い方
takumiyoshikawa
2
250
SQLアンチパターン第2版 データベースプログラミングで陥りがちな失敗とその対策 / Intro to SQL Antipatterns 2nd
twada
PRO
36
11k
はじめてのWeb API体験 ー 飲食店検索アプリを作ろうー
akinko_0915
0
180
商品比較サービス「マイベスト」における パーソナライズレコメンドの第一歩
ucchiii43
0
260
Jakarta EE Meets AI
ivargrimstad
0
570
Bedrock AgentCore ObservabilityによるAIエージェントの運用
licux
8
560
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
yakenji
1
910
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
940
テスターからテストエンジニアへ ~新米テストエンジニアが歩んだ9ヶ月振り返り~
non0113
2
250
decksh - a little language for decks
ajstarks
4
21k
Amazon Q CLI開発で学んだAIコーディングツールの使い方
licux
3
170
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
It's Worth the Effort
3n
185
28k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Statistics for Hackers
jakevdp
799
220k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
A designer walks into a library…
pauljervisheath
207
24k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
Become a Pro
speakerdeck
PRO
29
5.5k
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ΞϓϦΛ͢Δࡍʹ ͥͻ͓ࢼ͋͠Ε👏