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
VIPERアプリにSwiftUIを導入してみた
Search
おしん
July 18, 2023
Programming
1
410
VIPERアプリにSwiftUIを導入してみた
おしん
July 18, 2023
Tweet
Share
More Decks by おしん
See All by おしん
モバイルアプリへのRemoteConfigの恩恵
shincarpediem
2
96
Swift UI デフォルト引数クイズ
shincarpediem
1
110
よりアプリらしさを出すために
shincarpediem
1
110
Concurrency Warningが 沢山出たから聞いてほしい ~Xcode 16.1 Beta 編~
shincarpediem
1
210
iOSのPhoto Libraryアクセス権限を見直してみよう
shincarpediem
1
210
SwiftUI登場前のVIPERアプリでもSwiftUIをスムーズに導入できた話
shincarpediem
3
1.6k
Other Decks in Programming
See All in Programming
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
130
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
140
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
150
CSC305 Lecture 03
javiergs
PRO
0
230
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
780
CSC305 Lecture 04
javiergs
PRO
0
250
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
920
Serena MCPのすすめ
wadakatu
4
900
開発生産性を上げるための生成AI活用術
starfish719
1
170
Web技術を最大限活用してRAW画像を現像する / Developing RAW Images on the Web
ssssota
2
1.2k
CSC305 Lecture 02
javiergs
PRO
1
260
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Designing for Performance
lara
610
69k
Side Projects
sachag
455
43k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Gamification - CAS2011
davidbonilla
81
5.5k
How to train your dragon (web standard)
notwaldorf
96
6.3k
Done Done
chrislema
185
16k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
Statistics for Hackers
jakevdp
799
220k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Transcript
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE $PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 7*1&3ΞϓϦʹ4XJGU6*Λ ಋೖͯ͠Έͨ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 2 ࣗݾհ ੨ৼҰ झຯ ♨εύͰອըΛಡΈͳ͕Βμ ϥμϥ͢Δ͜ͱ 🥊CNPOTUFSͰ҉ҋϘΫγϯ άʹ໌͚ΕΔ͜ͱ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 3 4XJGU6*ͱ 4XJGU6*Ұൠతʹ.77.ΞʔΩςΫνϟͰ ಋೖ͞Ε͍ͯΔ͜ͱ͕ଟ͍ͱࢥ͍·͢
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 4 7*1&3ͱ J04ΞϓϦέʔγϣϯʹ ΫϦʔϯΞʔΩςΫνϟΛద༻ͨ͠ͷ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 5 7*1&3ʹ4XJGU6*Λ࣮ࡍʹಋೖ͢Δํ๏
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 6 7*1&3ʹ4XJGU6*Λ࣮ࡍʹಋೖ͢Δํ๏ 7JFX$POUSPMMFS͕7JFXͷ͜ͱΛ Βͳͯ͘ྑ͘ͳΓ·ͨ͠
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 7 7JFX.PEFMΛ࡞Γɺ7JFX$POUSPMMFSͱ4XJGU6*ͷ7JFXʹࢀরͤ͞Δ 0CTFSWBCMF0CKFDUΛܧঝͨ͠ 7JFX.PEFMΛ࡞͠·͢ɻ 6*7JFX$POUSPMMFSͱɺ4XJGU6*ͷ 7JFXͦΕͧΕ͕ɺ7JFX.PEFMΛ ࢀরͰ͖ΔΑ͏ʹ͠·͢ɻ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 8 4XJGU6*ͷ7JFXΛ6*7JFX$POUSPMMFSʹଓ͢Δ४උ 6*)PTUJOH$POUSPMMFSΛ ͬͯ4XJGU6*ͷ7JFXΛ ΊࠐΉॴΛ༻ҙ ͠·͢ɻ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 9 ࣮ࡍʹ4XJGU6*ͷ7JFXΛΊࠐΜͰɺར༻ 4XJGU6*ͷ7JFX 6*7JFX$POUSPMMFSΛ ҙࣝͤͣʹ ࣮Ͱ͖Δʂ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 10 ͏·͍ͬͨ͘͜ͱᶃʙ4XJGU6*ͷԸܙɿ6*ͷमਖ਼͕രʹͳͬͨʙ "VUP-BZPVUΛΉͨΊͷ ੍पΓͷίʔυ͕ෆཁʹͳΓɺ 7JFXͷमਖ਼͕ମײഒ͘Β͍͘ͳΓ·ͨ͠ɻ ɹ6*,JU ɹ4XJGU6*
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 11 ͏·͍ͬͨ͘͜ͱᶄʙ.77.ͷԸܙɿ7JFXͷߋ৽ॲཧΛॻ͘ඞཁ͕ͳ͘ͳͬͨʙ ɹ#JOEJOH ɹᶃ ɹᶄ ɹᶅ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 12 ͏·͍͔͘ͳ͔ͬͨ͜ͱᶃʙ7JFX.PEFMͷΛ7JFX͔ΒมߋͰ͖ͯ͠·͏ʙ 7JFX.PEFMͷϓϩύςΟ͕ɺ 4XJGU6*ͷ7JFX͔ΒมߋՄೳ ʹͳ͍ͬͯΔ👁
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 13 ͏·͍͔͘ͳ͔ͬͨ͜ͱᶃͷղܾࡦ 7JFX$POUSPMMFS͕7JFX.PEFMͷ Λมߋ͍͕ͯͨ͠ɺ ͷมߋ7JFX.PEFM͔Β͔͠ Ͱ͖ͳ͍Α͏ʹ͢Δɻ 7JFXΛόΠϯυ͢Δׂͷ7JFX.PEFM ͱɺ7JFXɾ*OUFSBDUPSɾ3PVUFSͱͷϋϒ
Ͱ͋Δ1SFTFOUFSͷׂ͕߹Θ͞Δɻ🙃
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 14 ͏·͍͔͘ͳ͔ͬͨ͜ͱᶄʙ04WFSຖʹ͑ΔNPEJ fi FS͕݁ߏ͋Δʙ J04ͰɺτάϧϘλϯͷ৭Λม͑ΔϞ σΟϑΝΠΞ UJOU$PMPS ͕͑ͳ͍ɻ
ଞʹɺɺ ςΩετϑΟʔϧυ5FYU7JFXɻ ೖྗ༰ͷมߋΛݕ͢ΔPO$IBOHFϞσΟ ϑΝΠΞɺJ04͔Β͔͑͠ͳ͍ɻ ΩʔϘʔυͷΤϯλʔΩʔΛݕ͢Δ PO4VCNJUϞσΟϑΝΠΞ J04͔Β͔͑͠ͳ͍ɻ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 15 ͏·͍͔͘ͳ͔ͬͨ͜ͱᶄͷղܾࡦ 04όʔδϣϯຖʹ ۪ʹذͤ͞·ͨ͠ɻস
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 16 ·ͱΊ ɾ 6*,JUͰ7JFX͕ߏங͞Εͨ 7*1&3ʹ4XJGU6*ΛΈࠐΉ͜ͱͰ ʮ7JFX༩͑ΒΕͨσʔλΛͱʹ6*Λͨͩදࣔ͢Δ͚ͩʯ ɹΛపఈ͘͢͠ͳͬͨɻ ˠ.77.ͷԸܙΛड͚ΒΕΔΑ͏ʹͳͬͨ🎉
ɾ4XJGU6*ࣗମʹ͍ͭͯɺ04ͷαϙʔτԼݶΛ্͛Ε্͛Δ΄Ͳɺ ɹ͑ΔϞσΟϑΝΠΞͷछྨ͕૿͑ͯɺ7JFXͷ։ൃੜ࢈ੑ্͕͕Δͱײͨ͡ɻ ˠ4XJGU6*ͦͷͷͷਐԽʹظʂʂ🥳