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
ハッカソンにおけるiOSアプリ開発での学びと楽しさ
Search
ojun
May 22, 2023
Technology
1
350
ハッカソンにおけるiOSアプリ開発での学びと楽しさ
ojun
May 22, 2023
Tweet
Share
More Decks by ojun
See All by ojun
アセットのコンパイルについて
ojun9
0
160
Exit 8 for SwiftUI
ojun9
1
220
Swift Evolution かるた
ojun9
2
110
Xcode 16のPreviewModifierと@Previewableを活用した効率的なプレビュー方法の考察
ojun9
4
910
Catch Up with Swift 5.10
ojun9
2
850
Overview: Swift OpenAPI Generator
ojun9
3
2.4k
if 式と switch 式による SwiftUI のプレビューエラー対策
ojun9
1
2k
楽しい夏休み!String Catalogs で新しい発見
ojun9
0
2.3k
ユニットテストを学んだ次に知りたかったApple標準APIに対するテストのやり方
ojun9
1
450
Other Decks in Technology
See All in Technology
ABEMAのCM配信を支えるスケーラブルな分散カウンタの実装
hono0130
3
510
身近なCSVを活用する!AWSのデータ分析基盤アーキテクチャ
koosun
0
1.3k
バクラクの AI-BPO を支える AI エージェント 〜とそれを支える Bet AI Guild〜
tomoaki25
2
770
Perlブートキャンプ
hatena
0
130
QAを"自動化する"ことの本質
kshino
1
120
[mercari GEARS 2025] Keynote
mercari
PRO
1
280
Progressive Deliveryで支える!スケールする衛星コンステレーションの地上システム運用 / Ground Station Operation for Scalable Satellite Constellation by Progressive Delivery
iselegant
1
170
なぜThrottleではなくDebounceだったのか? 700並列リクエストと戦うサーバーサイド実装のすべて
yoshiori
13
4.6k
LINEギフト・LINEコマース領域の開発
lycorptech_jp
PRO
0
190
クレジットカードの不正を防止する技術
yutadayo
17
7.6k
Redux → Recoil → Zustand → useSyncExternalStore: 状態管理の10年とReact本来の姿
zozotech
PRO
16
8.4k
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
610
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The Invisible Side of Design
smashingmag
302
51k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
A better future with KSS
kneath
239
18k
Balancing Empowerment & Direction
lara
5
750
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Transcript
%F/"º4503&4ºϥΫϚJ04.FFUVQɹ!ौ୩εΫϥϯϒϧεΫΤΞɹ ϋοΧιϯʹ͓͚ΔJ04ΞϓϦ։ ൃͰͷֶͼͱָ͠͞ PKVOKVO*[VUTV
w ϋοΧιϯͰԿΛ࡞͔ͬͨ w 9DPEF$MPVE w Χϥʔఆٛͱ࣮ w ֶͼ w ·ͱΊ
w Ұ൪࣮͕େมͩͬͨը໘ͷʢ͕࣌ؒ͋Εʂʣ ࣍
ࣗݾհʢPKVOʣ w ໊લ+VO*[VUTV w J04ΤϯδχΞ w ৽ଔೖࣾ w (8ʹಉظͰࢀՃͰ͖ΔਓͨͪͰϋοΧ ιϯʹࢀՃͨ͠
ϋοΧιϯͰԿΛ࡞͔ͬͨ %F/"ͷϓϩμΫτͱແؔͰ͢ʂ༗ࢤͰ࡞ͬͨϓϩμΫτʹͳΓ·͢
None
None
None
None
None
None
None
None
None
None
None
None
6*,JUΛ༻
None
9DPEF$MPVE
w ڥߏஙͰNVTUͰߟ͑ͳ͍ͱ͍͚ͳ͍͜ͱ w JOIPVTF#VJMEΛ࡞Δʁ"E)PDʁ5FTU'MJHIUʁ w ʢJOIPVTFʹؔͯ͠FOUFSQSJTFͷΞΧϯτ͕ͳ͍ͱ͑ͳ͍ʣ w 5FTU'MJHIUͷ֎෦ςετΛར༻͢Δ͜ͱΛܾΊͨ ϏϧυΛͲ͏ͬͯΈΜͳͱڞ༗͢Δʁ 9DPEF$MPVE
9DPEF$MPVEͷ֓ཁ 9DPEF$MPVE w 9DPEFʹΈࠐ·Εͨ$*$*αʔϏε w "QQMF͕"QQMFσϕϩούͷͨΊʹ։ൃ w Ϗϧυɺෳͷࣗಈςετͷฒྻ࣮ߦɺςελʔͷ "QQͷ৴ͳͲͷΫϥυϕʔεͷπʔϧΛҰ͔ॴͰར ༻Մೳ
w ͍ͭ͢͝
1VTI NFSHF ίϛϡχέʔγϣϯ Ϗϧυ Ϗϧυ
w Ϗϧυ͕ऴΘͬͨλΠϛϯάͰϝʔϧ͕དྷΔͷͰ ʢϏϧυ͕མͪͯͨ߹ʣ͙͢ʹमਖ਼Մೳ w ݁Ռʹؔͯ͠ɺTFDUJPOʹ͔ΕͯͯΈ͍͢ w 7JFX#VJME3FQPSUϘλϯΛ༻ҙͯ͘͠Ε͍ͯΔ "QQMFͷ༏͠͞
ϝʔϧ͕Θ͔Γ͍͢ 9DPEF$MPVE
w ॳճͷΈ৹͕ࠪඞཁ w ̎ճҎ߱৹͕ࠪൃੜ͠ͳ͍ ʢόʔδϣϯΞοϓ͢Δͱൃੜ͢Δ͔ʣ w 9DPEF$MPVEͷϏϧυ͕ऴΘͬͨΒଈ࣌ʹ ˠͷϝʔϧ͕ಧ͘
w ʢ࣮ΞϓϦ͜͏ͳͬͯ΄͍͠ʣ ֎෦ςετͬͯ৹ࠪೖΒͳ͍ͷʁ 9DPEF$MPVE
w ࠷ॳʹ3TXJGUΛಋೖ͍ͯͨ͠ w 9DPEF$MPVEͰͳ͔ͥQFSNJTTJPO&SSPS͕ൃੜͯ͠ɺ3TXJGU͕͑ͳ ͔ͬͨͷͰΉͳ͘ണ͕ͨ͠ w ࣮ߦϑΝΠϧࣗମΛϏϧυʹΈࠐΜͩΒಈ͘Β͍͕͠ɺڥߏஙͰ࣌ ؒΛ৯͏ͷҧ͏ͱஅ͠ɺϕλॻ͖ʹస w ͪͳΈʹɺ(JU)VCͷJTTVFͰٞ͞Ε͍ͯΔ
3TXJGU͕ಈ͔ͳͯ͘ണ͕͢͜ͱʹͳͬͨ 9DPEF$MPVE
3TXJGU͕ಈ͔ͳͯ͘ണ͕͢͜ͱʹͳͬͨ 9DPEF$MPVE w λΠϜϦʔͳهࣄ w ͷੌ͔͘Γ͍͢هࣄͳͷ Ͱ͓͢͢ΊͰ͢ʂ
3TXJGU͕ಈ͔ͳͯ͘ണ͕͢͜ͱʹͳͬͨ 9DPEF$MPVE w λΠϜϦʔͳهࣄ w ͷੌ͔͘Γ͍͢هࣄͳͷ Ͱ͓͢͢ΊͰ͢ʂ w (JU)VCͷJTTVFʹొ͞ Ε͍ͯ·͢ʂ
Χϥʔఆٛͱ࣮
ςʔϚΧϥʔΛઃఆͰ͖Δ Χϥʔఆٛͱ࣮ w ͜ͷΞϓϦʹ།ҰͱͳΔςʔϚΧϥʔ͕ଘࡏͯ͠ͳ͍ w ͳͷͰϢʔβͷઃఆʹΑͬͯΧϥʔΛग़͚͠Δ ඞཁ͕͋Δ w ˠͷը૾ͩͱࢵ৭͕ςʔϚΧϥʔͱͳͬͯΔ
None
Χϥʔఆٛͱ࣮ Χϥʔఆٛͱ࣮ w ৭શ෦ͰUZQF w ബΊͷ৭͔Β҉͍৭·Ͱଘࡏ͍ͯ͠Δ w ֤৭ʹରͯ̐͠ʙͭͷ৭͕͋Δ
࡞ͬͨਓ͍͢͝ʂ Χϥʔఆٛͱ࣮ w ࠷ॳ͔Β৭ʹରͯ͠ʮʯʮʯ ͳͲͷ໊લׂ͕ΓৼΒΕ͍ͯΔ w )FYจࣈͱͯ͠ॻ͍ͯ͘Ε͍ͯΔ w ݟ͍͢ߏ
w ࠷ॳ͔Β৭ʹରͯ͠ʮʯʮʯ ͳͲͷ໊લׂ͕ΓৼΒΕ͍ͯΔʢ࠶ʣ
"TTFUT Χϥʔఆٛͱ࣮ w ࠷ॳ͔Β৭ʹରͯ͠ʮʯʮʯ ͳͲͷ໊લׂ͕ΓৼΒΕ͍ͯΔʢ࠶ʣ w ໊લ͕ৼΒΕ͍ͯΔͷͰɺ࣮͢Δࡍ໊લ௨Γʹ ৭Λఆٛ͢Εྑ͍
w ޙ͔Β৭ʹରͯ͠ίϛϡχέʔγϣϯ͢Δࡍʹ ίϛϡχέʔγϣϯͷ্࣭͕͕Δ
"TTFUT Χϥʔఆٛͱ࣮
"TTFUT Χϥʔఆٛͱ࣮
"TTFUT Χϥʔఆٛͱ࣮
"TTFUT Χϥʔఆٛͱ࣮
None
Χϥʔఆٛͱ࣮ Χϥʔఆٛͱ࣮ w ͜ͷΞϓϦʹ།ҰͱͳΔςʔϚΧϥʔ͕ଘࡏͯ͠ͳ͍ w ͳͷͰϢʔβͷઃఆʹΑͬͯΧϥʔΛग़͚͠Δ ඞཁ͕͋Δ w ˠͷը૾ͩͱࢵ৭͕ςʔϚΧϥʔͱͳͬͯΔ
SFEͱHSFFOʮʯͰͦΕҎ֎ʮʯ
FOVNͰUZQFΛఆٛ Χϥʔఆٛͱ࣮
4USPOH$PMPSͱ࣮ͯ͠ Χϥʔఆٛͱ࣮
৭Λอଘ͢Δॲཧ Χϥʔఆٛͱ࣮
৭Λอଘ͢Δॲཧ Χϥʔఆٛͱ࣮
ݺͼग़͠ Χϥʔఆٛͱ࣮ w ࠷ऴతʹ࡞ΒΕͨFYUFOTJPO w ֎෦͔Β͜ͷFYUFOTJPOΛݺͼग़͢ w ʢTUSPOH$PMPSఆٛͯ͠ͳ͍ʜʣ w ଞͷFYUFOTJPOQSJWBUFʹͰ͖ͦ͏
ֶͼ
σβΠφʔͷํͱͷίϛϡχέʔγϣϯ ֶͼ w σβΠφʔͷํͱͷίϛϡχέʔγϣϯΛஸೡʹऔΔඞཁ͕͋Δ w ։ൃεϐʔυͷ্ͷͨΊ w Ռͷ࣭Λ্ͤ͞ΔͨΊ w ϋοΧιϯ͚ͩͰͳ࣮͘Ͱॏཁ
σβΠφʔͷํͱͷίϛϡχέʔγϣϯ ֶͼ w J04ΞϓϦ։ൃʹ͓͍ͯɺ"QQMFͷ)*(Λཧղ͢Δ͜ͱॏཁ
σβΠφʔͷํͱͷίϛϡχέʔγϣϯ ֶͼ w σβΠφʔΑΓJ04ΤϯδχΞͷํ͕)*(Λཧղͯ͠Δ͜ͱଟʑ͋Δ w ͍͍ѱ͍Ͱͳ͍
σβΠφʔͷํͱͷίϛϡχέʔγϣϯ ֶͼ w )*(ʹͬऔΔ͜ͱͰ"QQMFΒ͠͞J04Β͠͞Λ࣮ݱ͢Δ͜ͱ͕༰қ͘ͳΔ
σβΠφʔͷํͱͷίϛϡχέʔγϣϯ ֶͼ w ͦͷ্ɺඪ४ίϯϙʔωϯτΛ͏߹։ൃεϐʔυ্͕͢Δ
ࣄྫ ֶͼ
None
ͲΜͳײ͕͍͍͔͡ͳʁ
None
λοϓͯ͠มߋ εϫΠϓͯ͠ը໘มߋ εϫΠϓͯ͠มߋ εϫΠϓͯ͠ը໘มߋ
มߋແ͠ λοϓͯ͠ը໘มߋ λοϓͯ͠มߋ λοϓͯ͠ը໘มߋ
มߋແ͠ λοϓͯ͠ը໘มߋ λοϓͯ͠มߋ λοϓͯ͠ը໘มߋʢͳ͠ʣ
None
มߋεΫϩʔϧ ը໘มߋTFHNFOU$POUSPMΛ͏
σβΠφʔͷํͱͷίϛϡχέʔγϣϯ ֶͼ w ͪΖΜ)*(ʹશ४ڌ͢Δ͜ͱ͕తͰͳ͍ w ΞϓϦ͕࡞Γ͍ͨՁ؍ੈք؍ͱσβΠϯΛൺɺΑΓྑ͍બɾఏҊΛ ߦ͏͜ͱ͕ॏཁ w ্هͷΑ͏ͳখ͞ͳΓͱΓΛੵΈॏͶΔ͜ͱ͕ϓϩμΫτͷʹͭ ͳ͕Δͱࢥ͏
w ͜ͷॏཁੑΛ࠶ೝࣝͰ͖ͨͷ͕ݸਓతͳ͍ͪΜͷֶͼͰͨ͠
·ͱΊ
ϋοΧιϯʹ͓͚ΔJ04ΞϓϦ։ൃͰͷֶͼͱָ͠͞ ·ͱΊ w ࣗୡ͕ීஈ͍ͬͯΔͰಈ࡞͢ΔΞϓϦΛ࡞Δ͜ͱ͕Ͱ͖Δ w λʔήοτΛܾఆ͠ɺͦͷϢʔβͷ͜ͱΛߟ͑ͯϓϩμΫτΛ࡞Δ͜ͱ͕Ͱ ͖Δ w ίϛϡχέʔγϣϯͷॏཁੑΛ࠶ೝࣝ͢Δ͜ͱ͕Ͱ͖ͨ w
J04ΞϓϦ։ൃϋοΧιϯ৺͔Βָ͠Ί·ͨ͠ʂ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ✨
ࢀߟҾ༻จݙ w IUUQTEFWFMPQFSBQQMFDPNEFTJHOIVNBOJOUFSGBDFHVJEFMJOFT w IUUQTRJJUBDPNMPWFFJUFNTECEBDBGFF w IUUQTRJJUBDPN.BTBUBLBOJUFNTDGEE w IUUQTEFWFMPQFSBQQMFDPNKQYDPEFDMPVE w
IUUQTHJUIVCDPNNBDDBJO3TXJGUJTTVFT