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
iOS13でもSwiftUIでLazyなGridを実装したい! / use SwiftUI ...
Search
kuroyam
October 16, 2020
Programming
1
1.2k
iOS13でもSwiftUIでLazyなGridを実装したい! / use SwiftUI on iOS13
2020/10/16 ペパボモバイルテックカンファレンス
kuroyam
October 16, 2020
Tweet
Share
More Decks by kuroyam
See All by kuroyam
開発合宿で バーチャルオフィス を作ろうとしたお話 / Let's Babiniku !
kuroyam
0
2.1k
アプリ設計改善の旅路
kuroyam
1
1k
途中からSwiftLint
kuroyam
1
630
Objective-Cで書かれたアプリをSwift化したときの話
kuroyam
4
430
Other Decks in Programming
See All in Programming
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
220
Serena MCPのすすめ
wadakatu
4
950
階層構造を表現するデータ構造とリファクタリング 〜1年で10倍成長したプロダクトの変化と課題〜
yuhisatoxxx
3
960
理論と実務のギャップを超える
eycjur
0
120
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
210
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
210
Devoxx BE - Local Development in the AI Era
kdubois
0
120
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
3
480
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
170
Signals & Resource API in Angular: 3 Effective Rules for Your Architecture @BASTA 2025 in Mainz
manfredsteyer
PRO
0
110
CSC305 Lecture 05
javiergs
PRO
0
210
Swift Concurrency - 状態監視の罠
objectiveaudio
2
490
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
A better future with KSS
kneath
239
18k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.9k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
Code Review Best Practice
trishagee
72
19k
Six Lessons from altMBA
skipperchong
28
4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Transcript
LVSPZBN(.01FQBCP *OD ϖύϘϞόΠϧςοΫΧϯϑΝϨϯε J04Ͱ4XJGU6*Ͱ-B[Zͳ (SJEΛ࣮͍ͨ͠ʂ
γχΞϞόΠϧΤϯδχΞ ࠇాॣ!LVSPZBN 46;63*ࣄۀ෦ϓϩμΫτνʔϜ
ࠓ͢͜ͱ wJ04Λαϙʔτͨ͠4XJGU6*Ͱ6*$PMMFDUJPO7JFXత ͳ͜ͱΛ͍ͨ͠ w͍Ζ͍Ζࢼͯ͠ΈͨͷͰͳʹΛ͔ͬͨͱΘ͔ͬͨ͜ ͱΛ͠·͢
͖͔͚ͬ w46;63*ͷ"OESPJEΞϓϦΛ'MVUUFSͰ࡞ͬͨΒ࠷ߴ ͩͬͨ w࠷ߴΛͬͯɺ6*,JUΛ͏ͷ͕ͭΒ͘ͳͬͯ͠·ͬ ͨ w4XJGU6*ʹҠߦͰ͖ΕJ04ΞϓϦ࠷ߴʹͳΔ͔ ͠Εͳ͍
͔͠͠4XJGU6* w!BWBJMBCMF J04 w6*,JUͰͰ͖Δ͜ͱ͕·ͩશ෦Ͱ͖ΔΘ͚Ͱͳ͍ wಛʹ46;63*Ͱଟ༻͍ͯ͠Δ6*$PMMFDUJPO7JFX૬ ͷͷ͕ͳ͍ͷ͕ͭΒ͍
J04Ͱ͍ͭʹʜ ࢀরIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOTXJGUVJMB[ZWHSJE
Ͱ͢ΑͶ
J04Ͱ ͍͍ײ͡ʹΔํ๏ͳ͍ͷ͔
ௐࠪ
ࢼͨ͜͠ͱ 2(SJEΛࢼͯ͠ΈΔ -JTUΛ͕ͬͯΜΔ 6*7JFX3FQSFTFOUBCMFͰ͕ΜΔ
ௐࠪͰ࡞Δը໘ w 46;63*ͰΑ͘ΘΕΔྻOߦ ͷάϦου w γϯϓϧͳߦྻ͡Όͳ͍ෳࡶͳ 7JFXΛ࡞Δ͜ͱࠓճߟྀ͠ ͳ͍ w ॳظঢ়ଶͰ݅ɻԼ·ͰεΫ
ϩʔϧͨ͠Β͞Βʹ݅Ճ ͢Δ
2(SJEΛࢼ͢
2(SJEͱ w(JU)VC2.PCJMF2(SJE wl4XJGU6*DPMMFDUJPO7JFXzͰάάͬͨΒҰ൪্ͷهࣄ Ͱհ͞ΕͯͨͷͰͱΓ͋͑ͣࢼͯ͠ΈΔ
None
දࣔ؆୯ʹͰ͖ͨ
࣍ͷ݅Λऔಘ͢ΔॲཧΛ ࣮ͯ͠ΈΔ
͓ʜ
ແݶϧʔϓͨ͠ wԼ·ͰεΫϩʔϧͨ͠ΒPO"QQFBS͕ݺΕΔ͜ͱΛ ఆ͍͕ͯͨ͠࠷ॳ͔ΒݺΕ͍ͯΔ w͜ΕͨͿΜͯ͢ͷDPOUFOU͕࠷ॳ͔Β࡞ΒΕ͍ͯ ΔͷͰ
࣮ΛݟͯΈΔ
ͲͷΑ͏ʹ(SJEΛ࡞͍ͬͯΔ͔ w(FPNFUSZ3FBEFSͰҐஔΛܭࢉ͠ɺॎํʹ 74UBDLΛɺԣํʹ)4UBDLΛੜ͍ͯ͠Δ wͭ·Γ-B[Z-PBEʹରԠ͍ͯ͠ͳ͍ wσʔλ͕ߋ৽͞ΕΔͨͼʹ͚݅ͩ(SJEͷཁૉ͕ੜ ͞ΕΔ
2(SJE·ͱΊ w͍ΘΏΔແݶεΫϩʔϧʹ͍ͯͳͦ͞͏ w͕݅૿͑Δͱදࣔʹ͔͔Δ࣌ؒͱϝϞϦ༻ྔ͕૿ Ճ w݅ݻఆͷ(SJEʹ͍͍͔ w4XJGU6*ͷػೳ͚ͩͰ࣮ͯ͠Δͷ
-JTUΛ͕ͬͯΜΔ
4XJGU6*ͷ-JTU w6*,JUͰݴ͏ͱ͜Ζͷ6*5BCMF7JFXʹ૬͢Δ w-B[Z-PBEʹରԠ͍ͯ͠Δ wJ04͔Β͑Δ
-JTUͰ(SJEΛ࡞Δ w2(SJE74UBDLº)4UBDLͩͬ ͚ͨͲɺ-JTUº)4UBDLͳΒ͏· ͍͔͘͘ w-JTUͷҰཁૉʹྻͷσʔλ ΛೖΕͪΌ͏ wݸਓతʹJ04ελΠϧͱݺΜͰ ͍·͢
(JTUIUUQTHJTUHJUIVCDPNLVSPZBNFFBBCCCDCGDCBEDBCD
None
-JTUͰ(SJE࡞Δ࡞ઓ·ͱΊ w-B[Z-PBEରԠͷ(SJEΛ࡞Δ͜ͱՄೳ wύϑΥʔϚϯε໘ʹؔͯ͠ಛʹͳ͠ w-JTUʹஔ͢Δࡍʹ"SSBZΛૢ࡞͢ΔͷͰɺͦ͜ͷύϑΥʔϚϯε͕ѱ͍ ͱ͘ͳΔ wڧҾ͞൱Ίͳ͍ w-JTU·ͩػೳෆͳͱ͜Ζ͕͋Δ
6*7JFX3FQSFTFOUBCMFͰ ͕ΜΔ
6*7JFX3FQSFTFOUBCMFͱ w؆୯ʹݴ͏ͱ4XJGU6*͔Β6*,JUͷίϯϙʔωϯτΛ ͏Έ w͜ΕΛ͑6*$PMMFDUJPO7JFXΛ4XJGU6*͔Β͑Δ ͷͰ
ϥΠϒϥϦ͋ͬͨ w(JU)VCBQQUFLTUVEJPT"4$PMMFDUJPO7JFX w͜ΕΛͬͨͷͰ6*7JFX3FQSFTFOUBCMFʹ͍ͭͯৄ ͍͜͠ͱࠓճ͠·ͤΜ
ͬͯΈΔ
"4$PMMFDUJPO7JFXΛͬͯΈͯ wࠓͷͱ͜ΖҰ൪͍ͦ͢͏ w6*$PMMFDUJPO7JFXͷओཁػೳͪΌΜͱ͑Δ wҰ෦4XJGU6*͚ʹΠϯλʔϑΣʔεͷվྑ͕͞Εͯ ͍Δ w4XJGU6*ͷ4DSPMM7JFXͱ૬ੑ͕ѱ͍ͷͰɺ͜Ε͚ͩͰ Ұը໘࡞ΔํΛऔΔඞཁ͕͋Γͦ͏
6*7JFX3FQSFTFOUBCMFʹ͍ͭͯิ w6*$PMMFDUJPO7JFXҎ֎ʹɺ6*,JUͰͰ͖Δ͕ 4XJGU6*ͰͰ͖ͳ͍͜ͱଟ͍ w8FC7JFXɺ1VMM5P3FGSFTIͳͲ wࠓͷͱ͜Ζආ͚ͯ௨Εͳ͍ͷͰ͑ΔΑ͏ʹ͓ͯ͠ ͍ͨ΄͏͕Αͦ͞͏
·ͱΊ
·ͱΊ wJ04Ͱ͏·͘Ε-B[Z-PBEରԠͷ(SJEΛ࡞Ε Δ wݸਓతʹࠓΔͳΒ"4$PMMFDUJPO7JFXΛ͏͔ ͳ͊ wཁ݅ʹԠͯ͡ύϑΥʔϚϯεͳͲͷݕূΛ͔ͯ͠Β Γ·͠ΐ͏
4XJGU6*Ͳ͏ʁ w6*,JUͱൺ͔ͯͳΓੜ࢈ੑ͕ߴ͍ɻߴͰ6*Λ࡞Ε Δ wݱ࣌Ͱػೳෆͳͱ͜Ζ͕͋Δ w͍·ΔͳΒ6*7JFX3FQSFTFOUBCMFආ͚ͯ௨Εͳ ͦ͞͏ w࣮ઓಋೖ͏ͪΐͬͱઌ͔ͳʜ