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
320
ハッカソンにおけるiOSアプリ開発での学びと楽しさ
ojun
May 22, 2023
Tweet
Share
More Decks by ojun
See All by ojun
Swift Evolution かるた
ojun9
2
90
Xcode 16のPreviewModifierと@Previewableを活用した効率的なプレビュー方法の考察
ojun9
4
530
Catch Up with Swift 5.10
ojun9
2
740
Overview: Swift OpenAPI Generator
ojun9
3
1.7k
if 式と switch 式による SwiftUI のプレビューエラー対策
ojun9
1
1.3k
楽しい夏休み!String Catalogs で新しい発見
ojun9
0
1.9k
ユニットテストを学んだ次に知りたかったApple標準APIに対するテストのやり方
ojun9
1
390
Other Decks in Technology
See All in Technology
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
870
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
170
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
110
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
600
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
140
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
410
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
フルカイテン株式会社 採用資料
fullkaiten
0
40k
Why does continuous profiling matter to developers? #appdevelopercon
salaboy
0
190
Lambdaと地方とコミュニティ
miu_crescent
2
370
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Being A Developer After 40
akosma
86
590k
Building an army of robots
kneath
302
43k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
GitHub's CSS Performance
jonrohan
1030
460k
Thoughts on Productivity
jonyablonski
67
4.3k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
A Tale of Four Properties
chriscoyier
156
23k
The Cult of Friendly URLs
andyhume
78
6k
Gamification - CAS2011
davidbonilla
80
5k
RailsConf 2023
tenderlove
29
900
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