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プロジェクト
Search
kazuhiro4949
November 12, 2019
Technology
0
260
身近な技術的課題から始めるOSSプロジェクト
https://yahoo-nagoya.connpass.com/event/151788/
kazuhiro4949
November 12, 2019
Tweet
Share
More Decks by kazuhiro4949
See All by kazuhiro4949
SwiftUIをUIKitのライフサイクルで拡張するTips
kazuhiro4949
4
2.5k
iOS15でプッシュ通知のテストが大変だった話
kazuhiro4949
0
560
Source Editor Extensionと SwiftSyntaxでコード自動生成ツール を作る
kazuhiro4949
2
3.6k
iOS 12サポート終了で使えるAPIおさらい
kazuhiro4949
2
320
Source Editor ExtensionとSwiftSyntaxでコード自動生成
kazuhiro4949
0
70
大企業の最前線でコードを書き続けるためにやってきたこと
kazuhiro4949
28
19k
10分で振り返るここ数年のWWDCの技術トレンド
kazuhiro4949
0
270
コードを書きながら同時に設計していくためのiOSアプリ開発方針
kazuhiro4949
6
2.5k
WWDC 2019 AR・ML・その他Apple プラットフォームのアップデート
kazuhiro4949
0
210
Other Decks in Technology
See All in Technology
生成AIが変えるデータ分析の全体像
ishikawa_satoru
0
150
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
190
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
830
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
TypeScript、上達の瞬間
sadnessojisan
46
13k
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
100
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
Lambdaと地方とコミュニティ
miu_crescent
2
370
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
The Rise of LLMOps
asei
7
1.6k
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
Application Development WG Intro at AppDeveloperCon
salaboy
0
190
Featured
See All Featured
Teambox: Starting and Learning
jrom
133
8.8k
A designer walks into a library…
pauljervisheath
204
24k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Writing Fast Ruby
sferik
627
61k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
Done Done
chrislema
181
16k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
How STYLIGHT went responsive
nonsquared
95
5.2k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Six Lessons from altMBA
skipperchong
27
3.5k
The Invisible Side of Design
smashingmag
298
50k
RailsConf 2023
tenderlove
29
900
Transcript
ۙͳٕज़త՝͔Β ࢝ΊΔ044ϓϩδΣΫτ ,B[VIJSP)BZBTIJ !LB[VIJSP Ϡϑʔ໊ݹ5FDI.FFUVQ
ࣗݾհ w ໊લ w ྛ߂ !LB[VIJSP w ࣄ w
:BIPP+"1"/J04ΞϓϦ w J04ΞϓϦࠇଳ
ࣾ֎͚ͷτʔΫ
Ϡϑʔ͕044ͷจԽΛੵۃతʹ औΓೖΕ͍ͯΔΠϝʔδͬͯ͋Γ·͔͢ʁ
IUUQTHJUIVCDPNZBIPPKBQBO
J04ؔ࿈Ͱ͍͏ͱ IUUQTHJUIVCDPNZBIPPKBQBO
ʑͷۀʹ͓͍ͯ w ͍ͬͯΔίʔυʹϥΠηϯεΛ͚ͭͯ ެ։ϝϯςφϯεɺ͍ͬͯ͏ͷΛҙ֎ͱ ͍ͬͯΔ w ྫ͑ΞϓϦͷЌςετπʔϧͳͲ IUUQTXXXTMJEFTIBSFOFUUFDICMPHZBIPPTT
Ϡϑʔ044จԽʹରͯ͠ ͔ͳΓ༰
ྫ͑ w ʑͷ։ൃࣗମ(JUIVC্ͰϓϧϦΫΤετϕʔεͰߦ͏ w ੈͷதʹ͋Δ044͔ͳΓ͍ͬͯΔ w ༗໊ͳ044ʹੵۃతʹίϛοτ͍ͯ͠Δ w ࣗͨͪͰ044Λ͔Β࡞ͬͯൃ৴͍ͯ͠Δ
ྫ͑ w ʑͷ։ൃࣗମ(JUIVC্ͰϓϧϦΫΤετϕʔεͰߦ͏ w ੈͷதʹ͋Δ044͔ͳΓ͍ͬͯΔ w ༗໊ͳ044ʹੵۃతʹίϛοτ͍ͯ͠Δ w ࣗͨͪͰ044Λ͔Β࡞ͬͯൃ৴͍ͯ͠Δ
ʑͷαʔϏε։ൃ͔ΒͲ͏ 044Λ࡞͍ͬͯΔ͔
ࣗͷΓํ w ࣄͰൃݟٕͨ͠ज़త՝͔Β044ϓϩδΣΫτΛ࢝ΊΔ w ʑͷ࣮ͷதͰ࣮ࡍʹ໘ͨ͠Ұൠతʹ௨͡Δ՝Λݟ͚ͭΔ
ࣗͷΓํ w ձࣾͷϓϩμΫτʹΘΕ͍ͯΔ ίʔυͰੈͷதͷٕज़త՝Λղܾ ͢Δͷɺ044ͱͯ͠Γग़͢ طଘϓϩμΫτ ίʔυ 044ͱͯ͠Γग़͠
ࣗͷΓํ w ձࣾͷϓϩμΫτ͔Β͘ੈͷதʹ ௨͡Δٕज़త՝Λൃݟ͠ɺݸਓͰ 044ͱͯ͠࡞ͬͯϑΟʔυόοΫ͢ Δ طଘϓϩμΫτ ݸਓͰ࡞ͬͨίʔυ 044ͱͯ͠ಋೖ
ࣗͷΓํ w ࣾษڧձͷωλͱͯ͠࡞ͬͯɺ έ͕ྑ͔ͬͨΒ044ͱͯ͠ެ։ ίʔυ 044ͱͯ͠ެ։ IUUQTXXXJSBTVUPZBDPN͔Β
ࣗͷΓํ w 044ͱͯ͠։ൃͨ͠ΒܦҢͳͲؚΊ ͯษڧձͳͲͰࣄͱͯ͠ൃ৴
͍͔ͭ͘ͷࣄྫΛ௨ͯ͡ɺ۩ମతʹ ۀΛͲ͏044։ൃͭͳ͖͔͛ͯͨ ͝հͰ͖Εͱࢥ͍·͢
˞ࣄྫͯ͢J04ΞϓϦ ։ൃͷʹͳΓ·͢
հ͢ΔϓϩμΫτ 4XJGU9.-1BSTFSελϯμʔυϥΠϒϥϦ͕͍ʹ͍͘ 1BHJOH,JUཁ݅ʹ߹͏ϥΠϒϥϦ͕ͳ͔ͬͨ 4XJGU6*$BUBMPH͚ࣾͷڭҭ༻ࢿྉΛެ։
4XJGUZ9.-1BSTFS
4XJGUZ9.-1BSTFS w J04Ͱ9.-Λύʔε͢Δ߹ɺ9.-1BSTFSͱ͍͏Έࠐ ΈͷΫϥεΛ͏ w 9.-1BSTFS4"9ܕͷύϑΥʔϚϯε͕ྑ͍ύʔαʔ
IUUQTUFDICMPHZBIPPDPKQBEWFOUDBMFOEBSTXJGU@PTT ୯७ͳ9.-Ͱ͜ͷ͘Β͍ͷίʔυྔʹͳΔ ࣌4XJGU
IUUQTUFDICMPHZBIPPDPKQBEWFOUDBMFOEBSTXJGU@PTT ͜ͷ9.-Λύʔε͢ΔͨΊʹ
IUUQTUFDICMPHZBIPPDPKQBEWFOUDBMFOEBSTXJGU@PTT w ύʔε͢ΔͨΊͷΫϥεΛ࡞Δ w ୳ࡧΠϕϯτΛϝιουͱ࣮ͯ͠
՝ w ࣌ͷ:BIPPγϣοϐϯά9.-͕ ଟ༻͞Ε͍ͯͨ w ύʔεͷͨΊͷେͳίʔυྔΛݮΒ͍ͨ͠ w 4XJGUݴޠͰඞཁेͳϥΠϒϥϦ͕ͳ͔ͬͨ IUUQTUFDICMPHZBIPPDPKQBEWFOUDBMFOEBSTXJGU@PTTΑΓ IUUQTDPNNFSDFBQQZBIPPDPKQTIPQQJOHBQQMJ
IUUQTHJUIVCDPNZBIPPKBQBO4XJGUZ9.-1BSTFS
4XJGUZ9.-1BSTFS w %0.ܕͷύʔαʔ w ੲ͔Β͋ΔϥΠϒϥϦ͕औΓࠐΊ͍ͯͳ͍ɺ৽͍͠ݴޠػೳΛੵۃతʹ ࠾༻ w ܰྔͰσόοά͕͍͢͠ͱ͍ͬͨɺ࣮Ͱͷ͍উखʹൺॏΛஔ͘
IUUQTUFDICMPHZBIPPDPKQBEWFOUDBMFOEBSTXJGU@PTT ίʔυྔ͕͜ͷ͘Β͍ʹݮΒͤΔ ࣌4XJGU
IUUQTUFDICMPHZBIPPDPKQBEWFOUDBMFOEBSTXJGU@PTT w ͖ͬ͞ͱಉ͡ύʔεॲཧ෦ ͜ΜͳΜ
044ͱͯ͠ެ։ w ಛఆͷΞϓϦ༻͕ͩͬͨҙ֎ͱ͍উख͕ྑ͔ͬͨͨΊɺ ͠Β͘ӡ༻ͨ͠ޙʹ044ͱͯ͠ެ։ w ݴޠͷόʔδϣϯΞοϓରԠNBD04ରԠͳͲ໘ͳϝϯ ςφϯεϓϧϦΫͰΒ͑Δ
1BHJOH,JU
͋ΔϓϩμΫτͷ6* ΛطଘϥΠϒϥϦͰ։ൃ w 4NBSU/FXTNFSDBSJͳͲͰ࠾༻͞Ε ͍ͯΔɺϖʔδϯάͱԣεΫϩʔϧϝ χϡʔͷΈ߹Θͤ ˞Πϝʔδ ࣮ࡍʹؔΘͬͨϓϩμΫτͱҧ͍·͢
ͦͷϥΠϒϥϦͰɺλΠτϧจࣈྻͱը໘ͷྻΛ ͢ͱɺܾ·ͬͨσβΠϯͷϖʔδϯά6*͕࡞ΒΕΔ ˞Πϝʔδ ࣮ࡍʹؔΘͬͨϓϩμΫτͱҧ͍·͢ let ary = [ { title:
“Page1", view: UIViewController() }, { title: “Page2", view: UIViewController() }, { title: “Page3”, view: UIViewController() }, ]
ͦͷϥΠϒϥϦͰɺλΠτϧจࣈྻͱը໘ͷྻΛ ͢ͱɺܾ·ͬͨσβΠϯͷϖʔδϯά6*͕࡞ΒΕΔ ˞Πϝʔδ ࣮ࡍʹؔΘͬͨϓϩμΫτͱҧ͍·͢ let ary = [ { title:
“Page1", view: UIViewController() }, { title: “Page2", view: UIViewController() }, { title: “Page3”, view: UIViewController() }, ] ϝχϡʔ͕͋Δ
ͦͷϥΠϒϥϦͰɺλΠτϧจࣈྻͱը໘ͷྻΛ ͢ͱɺܾ·ͬͨσβΠϯͷϖʔδϯά6*͕࡞ΒΕΔ ˞Πϝʔδ ࣮ࡍʹؔΘͬͨϓϩμΫτͱҧ͍·͢ let ary = [ { title:
“Page1", view: UIViewController() }, { title: “Page2", view: UIViewController() }, { title: “Page3”, view: UIViewController() }, ] ϖʔδϯάՄೳͳ ίϯςϯπྖҬ͕͋Δ
ελΠϧύϥϝʔλͰ͢͜ͱ͕Մೳ ˞Πϝʔδ ࣮ࡍʹؔΘͬͨϓϩμΫτͱҧ͍·͢
ॳظϓϩμΫτͷ γϯϓϧͳཁ݅ຬ͍ͨͯͨ͠
͔͠͠ཁ͕݅গͣͭ͠ෳࡶԽ͍͖ͯ͠ɺ ࠾༻ͨ͠ϥΠϒϥϦͰରԠ͖͠Εͳ͘ͳΔ
ϓϩμΫτͷʹͬͯ6*͕ࡉԽ͞Εɺ ͜͏͍ͬͨ͜ͱΛٻΊΒΕΔΑ͏ʹͳ͖ͬͯͨ w ྫ͑ w ͋Δը໘Ͱϝχϡʔͷಛఆͷཁૉ ͷ্ʹαϒλΠτϧΛ͚͍ͨ w ͋Δը໘Ͱίϯςϯπͱϝχϡʔ ͷྖҬؒϘλϯΛฒ͍ͨ
˞Πϝʔδ ࣮ࡍʹؔΘͬͨϓϩμΫτͱҧ͍·͢
ϓϩμΫτͷʹͬͯ6*͕ࡉԽ͞Εɺ ͜͏͍ͬͨ͜ͱΛٻΊΒΕΔΑ͏ʹͳ͖ͬͯͨ ˞Πϝʔδ ࣮ࡍʹؔΘͬͨϓϩμΫτͱҧ͍·͢ w ྫ͑ w ͋Δը໘Ͱϝχϡʔͷಛఆͷཁૉ ͷ্ʹαϒλΠτϧΛ͚͍ͨ w
͋Δը໘Ͱίϯςϯπͱϝχϡʔ ͷྖҬؒϘλϯΛฒ͍ͨ
6*ϥΠϒϥϦʹ ͋Γ͕ͪͳ՝ w σβΠϯʹॊೈੑ͕ͳ͘ɺ6*ͷ࠷దԽ͕Ͱ͖ͳ͍ w ͜ͷ࠶ར༻ੑʹؔ͢Δ՝Α͋͘ΔҰൠతͳͷͱߟ͑Δ w ղܾ͢ΕੈͷதతͳՁ͕ߴ͍ͨΊɺझຯͰ͜ͷ՝ʹऔΓΉ
IUUQTHJUIVCDPNLB[VIJSP1BHJOH,JU
1BHJOH,JU w ༷ʑͳελΠϧɾϨΠ Ξτͷϖʔδϯά6* Λ࣮ݱՄೳ w ۀϨϕϧͷෳࡶͳ6* ʹద༻Ͱ͖Δ IUUQTHJUIVCDPNLB[VIJSP1BHJOH,JU
044ͱͯ͠ެ։ w ݸਓͷϦϙδτϦͰެ։ w 044ʹͨ͋͠ͱɺۀͰ։ൃ͍ͯ͠ΔϓϩμΫτ࠾༻ w ඞཁͳػೳͷՃͳͲۀͱͯ͠ϝϯςφϯε͍ͯ͠Δ
w ެ։ޙʹ։ൃܦҢΛษڧձ Ͱ ࣄͱͯ͠ ൃද IUUQTTQFBLFSEFDLDPNLB[VIJSPVJSBJCVSBSJIBEPVTIFKJTBSFSVCFLJLB
4XJGU6*$BUBMPH
4XJGU6* w 88%$Ͱൃද͞Εͨ"QQMFϓ ϥοτϑΥʔϜ͚৽6*ϥΠϒϥϦ w 3FBDUKTΛॻ͘Α͏ʹΞϓϦ։ൃ͕Ͱ ͖Δ IUUQTEFWFMPQFSBQQMFDPNKQYDPEFTXJGUVJΑΓ
4XJGU6* w ൃදޙɺૣϲ݄ʹճࣾษڧձΛ։͘ w ڵຯΛ࣋ͬͯΒ͑Δ͕ɺखΛग़͢·Ͱͷෑډ͕ߴ͍͜ ͱΛײ͡Δ
4XJGU6*ͷ՝ w ެࣜυΩϡϝϯτʹेʹ࣮ํ๏͕ॻ͔Ε͍ͯͳ͍ w ެࣜαϯϓϧͷίʔυ͕͔ͳΓෳࡶͰɺॳ৺ऀʹෑډ͕ߴ͍
IUUQTHJUIVCDPNLB[VIJSP4XJGU6*$BUBMPH
4XJGU6*$BUBMPH w ࣾͷJ04ΞϓϦΤϯδχΞ͚ڭҭࢿྉͱͯ͠։ൃ w ࣮ߦ͢Δ͚ͩͰ֤6*ίϯϙʔωϯτͷදࣔಈ͖ΛࢼͤΔ w ࠷খݶͷ࣮ͱ࣮ࡍͷ࣮ߦ݁ՌΛཏ
044ͱͯ͠ެ։ w ࣗࣾʹؔΘΒͣʹཱͭࢿྉͱͳΔͨΊɺ ࣾษڧձͰར༻ޙʹެ։ w Ϡϑʔ͕͍ͬͯΔࣾ֎͚ษڧձͷωλ ͷҰͭͱͯ͠׆༻͠ɺධΛΒ͏ IUUQTZKNFFUVQDPOOQBTTDPNFWFOU
ࣗͷΓํ࠶ܝ ձࣾͷϓϩμΫτʹΘΕ͍ͯΔίʔυͰੈͷதͷٕज़త ՝Λղܾ͢Δͷɺ044ͱͯ͠Γग़͢ ձࣾͷϓϩμΫτ͔Β͘ੈͷதʹ௨͡Δٕज़త՝Λൃ ݟ͠ɺݸਓͰ044ͱͯ͠࡞ͬͯϑΟʔυόοΫ͢Δ ࣾษڧձͷωλͱͯ͠࡞ͬͯɺධͩͬͨΒެ։ 044ͱͯ͠։ൃͨ͠ΒܦҢͳͲؚΊͯษڧձͳͲͰൃ৴
ࣄͷٕज़త՝͔Β044Խ͢Δ ϝϦοτ w ࢝Ί͔ΒΓग़͢͜ͱΛҙࣝͯ͠Ϋϥεઃܭ͢Δͱɺػೳ ͕໌֬Խ͞Εͯૄ݁߹ͳίʔυ͕ॻ͚Δ w ීஈ͔Β൚༻తͳ՝͕ͳ͍͔ҙࣝ͢Δ͜ͱͰɺݸਓతʹ ϥΠϒϥϦΛ࡞Δ͖͔͚͕ͬಘΒΕΔ w ୀ৬ͨ͠ݩಉ྅͔ΒϓϧϦΫ͕Β͑Δ
w ϓϩμΫτͷϥΠηϯεཝʹࣗͷ໊લ͕ࡌΔ
Έͳ͞ΜࣄͰݟ͚ͭͨ ٕज़త՝͔Β044ϓϩδΣΫτ Λ࢝ΊͯΈ͍ͯͩ͘͞
ࢀߟࢿྉ w ۙͳٕज़త՝͔Β࢝ΊΔ044ϓϩδΣΫτ w IUUQTUFDICMPHZBIPPDPKQBEWFOUDBMFOEBS TXJGU@PTT w ϠϑʔͷΞϓϦʹ͓͚ΔձࣾશମͰͷۀޮԽʹ͍ͭͯ EFWTVNJ$ w
IUUQTXXXTMJEFTIBSFOFUUFDICMPHZBIPPTT w ZBIPPKBQBO(JUIVC w IUUQTHJUIVCDPNZBIPPKBQBO