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.2k
アプリ設計改善の旅路
kuroyam
1
1k
途中からSwiftLint
kuroyam
1
640
Objective-Cで書かれたアプリをSwift化したときの話
kuroyam
4
430
Other Decks in Programming
See All in Programming
Fragmented Architectures
denyspoltorak
0
140
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
17
6.1k
MUSUBIXとは
nahisaho
0
120
SourceGeneratorのススメ
htkym
0
190
AI & Enginnering
codelynx
0
100
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
150
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
5.9k
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
590
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
Apache Iceberg V3 and migration to V3
tomtanaka
0
140
Basic Architectures
denyspoltorak
0
660
AtCoder Conference 2025
shindannin
0
1k
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
8k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
920
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
580
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Building Applications with DynamoDB
mza
96
6.9k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
270
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
110
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Mobile First: as difficult as doing things right
swwweet
225
10k
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࣮ઓಋೖ͏ͪΐͬͱઌ͔ͳʜ