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
Pocochaにおけるアセットの管理/potatotips55
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
noppefoxwolf
October 09, 2018
Technology
240
3
Share
Pocochaにおけるアセットの管理/potatotips55
noppefoxwolf
October 09, 2018
More Decks by noppefoxwolf
See All by noppefoxwolf
High performance GIF playback/iOSDC25
noppefoxwolf
1
570
Spice up your notifications/try!Swift25
noppefoxwolf
3
830
iOSの隠されたAPIを解明し、開発効率を向上させる方法/iOSDC24
noppefoxwolf
2
1.2k
今から理解するApp Intentエコシステム/WWDC24Recap
noppefoxwolf
0
64
既存アプリをvisionOS対応してリリースした話/visionOS LT vol5
noppefoxwolf
0
230
UIのブラックボックスを探る/iOSDC23
noppefoxwolf
3
5k
CoreGraphicsでドット絵を描こう/iOSDC22
noppefoxwolf
0
3.1k
ランタイムデバッグのススメ/iOSDC21
noppefoxwolf
1
5.5k
google/mediapipe で始めるARアプリ開発/iOSDC2020
noppefoxwolf
1
1.7k
Other Decks in Technology
See All in Technology
組織の中で自分を経営する技術
shoota
0
230
最低限これだけ押さえれ大丈夫_Claude Enterprise/Team企業展開ガバナンス入門
tkikuchi
1
570
Claude code Orchestra
ozakiomumkj
3
780
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.7k
Gradle×GitHub_ActionsでCI時間を約50%短縮 ジョブ分割の設計と落とし穴 / Cutting CI Time by ~50% with Gradle and GitHub Actions: Job-Splitting Design and Pitfalls
takatty
0
550
さきさん文庫の書籍ができるまで
sakiengineer
0
320
なぜハノーバーメッセに行くべきなのか 〜初参加だから語れること〜
tanakaseiya
0
190
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
270
大学生が本気でDatabricksを活用してDiscordサークルをデータ駆動させてみた
phantomjuju
1
300
テストコードのないプロジェクトにテストを根付かせる
tttol
1
240
ルールやカスタム機能、どう使う?理想の出力を引き出すために今知りたいIBM Bob 5つの機能
muehara
0
160
Javaで学ぶSOLID原則
negima
1
240
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
55k
My Coaching Mixtape
mlcsv
0
140
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The Curse of the Amulet
leimatthew05
1
13k
Fireside Chat
paigeccino
42
3.9k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
830
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Transcript
1PDPDIBʹ͓͚ΔΞηοτͷཧ QPUBUPUJQTOPQQF !OPQQFGPYXPMG
OPQQF ! גࣜձࣾσΟʔɾΤψɾΤʔ " ͖ͭͶ͔Θ͍͍ # 1PDPDIBJ04ϦʔυΤϯδχ Ξ
1PDPDIB w ϥΠϒ৴ΞϓϦ w ʙ w ଟ࠼ͳΠϕϯτاըΛ࣮ࢪ w ϨϕϧʹԠͨ͡ԋग़ΪϛοΫ
Ξηοτͷྫ w ը૾ w ৭ w 4UPSZCPBSE w ϑΥϯτ w
FUD
Ξηοτͷྫ w ը૾ w ৭ w 4UPSZCPBSE w ϑΥϯτ w
FUD
1PDPDIBͰͷը૾Ξηοτͷϧʔ ϧ
1PDPDIBͰͷը૾Ξηοτͷϧʔϧ w "TTFU-JUFSBMΘͳ͍ w จࣈྻͰϦιʔεʹΞΫηε͠ͳ͍ w *OUFSGBDFCVJMEFSͷதͰը૾Λઃఆ͠ͳ͍ w ΞϓϦΞΠίϯ୯Ұιʔε͔Βੜ w
μϛʔΞηοτ໌֬ʹϓϩδΣΫτΛ͚ͯཧ͢Δ
"TTFU-JUFSBMΘͳ͍
$PMPS-JUFSBM*NBHF-JUFSBM #imageLiteral(resourceName: "Facebook")
"TTFU-JUFSBMͷ w 9DPEF্ͰɺΞηοτͷҧ͍Λೝࣝͮ͠Β͍
"TTFU-JUFSBMͷ
"TTFU-JUFSBMͷ ϓϩδΣΫτͷن͕େ͖͘ͳΔ΄ͲɺྨࣅͷΞηο τ͕૿͑Δɻ w ղ૾ͷҧ͏ը૾Ξηοτ w ۙࣅ৭ͷΧϥʔΞηοτ
"TTFU-JUFSBMͷସҊ ݁ہ໊લΛ͚ͯݺͼग़͢ࣄ͕ϕετ ݟͨʴಛͷΈ߹ΘͤͰɺΞηοτΛಛఆग़དྷΔ Α͏ͳ໊લΛ͚Δ TriangleRed TriangleLarge
ॏෳ͢Δ໊শͷରࡦ ը໘͕ҟͳΓɺΞηοτҟͳΔ͕ɺݟ͕ͨࣅ͍ͯ ΔΞηοτ͕͋ΔՄೳੑࣄલʹߟྀ͓ͯ͘͠ UserProfileViewTriangleLarge ProfileEditViewTriangleLarge
ڞ௨ͰΘΕΔΞηοτ ෳͷϏϡʔͰར༻͞ΕΔΞηοτɺCommonΛઌ಄ ʹ͚ͭΔ CommonLeftArrow
ωʔϜεϖʔεΛ׆༻͢Δ ϏϡʔͷπϦʔߏʹࣅ໊ͨশʹͳ͍ͬͯͨ͘Ίɺ ͳϑΝΠϧ໊ʹͳ͍ͬͯ͘ɻ YDBTTFUTͷωʔϜεϖʔεΛ༗ޮʹ͢ΔࣄͰγϯϓϧ ͳϑΝΠϧ໊Λར༻Ͱ͖Δɻ ProfileEdit/Triangle/Large
ωʔϜεϖʔεΛ׆༻͢Δ
ωʔϜεϖʔεΛ׆༻͢Δ // Before let image = UIImage(named: "ProfileEditTriangleLarge") // After
let image = UIImage(named: "ProfileEdit/Triangle/Large")
จࣈྻͰϦιʔεʹΞΫηε͠ͳ ͍
จࣈྻͰΞηοτʹΞΫηε͢Δ let image = UIImage(named: "TypoFileName") self.image = image! //
nil exception ϥϯλΠϜͰ5ZQP͕ൃ֮ 1PDPDIBͰෳࡶͳ݅Ͱը૾Λग़͚͢͠ΔͨΊɺ ී௨ʹ৮͍ͬͯΔͱؾ͕͚ͳ͍Ξηοτ͕ଟ͘ଘࡏ
5ZQPΛͳ͘͢ 34XJGU4XJGU(FOͳͲΛར༻ͯ͠5ZQPΛͳ͘͢ let image = Asset.ProfileEdit.Triangle.large.image ίϯύΠϧ࣌ʹλΠϙ͕ݕग़ՄೳʹͳΔ
*OUFSGBDFCVJMEFSͷதͰը૾ Λઃఆ͠ͳ͍
*OUFSGBDFCVJMEFSͷதͰը૾Λઃఆ͢Δة ݥੑ
$PVMEOPUMPBEUIF*NBHF/BNFJNBHF SFGFSFODFEGSPNBOJCJOUIFCVOEMFXJUI JEFOUJpFSDPNCVOEMFBQQ
ଘࡏ͠ͳ͍Ξηοτͷରࡦ *OUFSGBDF#VJMEFSͰը૾ΛΘͳ͍ํ w ϧʔϧͰېࢭ͢Δͷແཧ
ଘࡏ͠ͳ͍Ξηοτͷରࡦ *OBCBҴӋ IUUQTHJUIVCDPNOPQQFGPYXPMGJOBCB
ଘࡏ͠ͳ͍Ξηοτͷରࡦ $ Inaba ./Project > CaptureButton.xib ! An image is
specified outside the code. (icon_camera) > NoticeView.xib ! An image is specified outside the code. (notice_dialog_image) > SignupViewController.storyboard ! An image is specified outside the code. (welcome)
*OUFSGBDFCVJMEFSͷத͔Βը૾Λফ͢ *#͔Βը૾Λফ͢ͱ"VUPMBZPVU͕յΕΔ͜ͱ͕͋Δ w 6**NBHF7JFXJNBHFΛઃఆ͢Δͱͦͷը૾αΠζ Ͱ*OUSJOTJD$POUFOU4J[F͕ͭ͘ w ໌ࣔతʹ*OUSJOTJDDPOUFOUTJ[FΛઃఆ͢Δ͜ͱͰը ૾ແ͠Ͱ"VUPMBZPVUΛղܾͰ͖Δ
*OUFSGBDFCVJMEFSͷத͔Βը૾Λফ͢
ΞϓϦΞΠίϯ୯Ұιʔε͔Β ੜ
ΞϓϦΞΠίϯͷ՝ ը૾ΞηοτϕΫλʔQEG͔ΒϏϧυ࣌ʹෳղ૾ ͷϥελը૾ΛੜͰ͖Δ Կނ͔ΞϓϦΞΠίϯ֤ղ૾ͷϥελը૾Λࣗલ Ͱ༻ҙ͠ͳ͍ͱμϝ
Ϗϧυ࣌ʹΞΠίϯΛੜ IUUQTHJUIVCDPNOPQQFGPYXPMGBQQJDPOHFO
Ϗϧυ࣌ʹΞΠίϯΛੜ
Ϗϧυ࣌ʹΞΠίϯΛੜ QPE"QQ*DPO(FO 10%43005"QQ*DPO(FOBQQJDPOHFOJOQVU 43$3005130%6$5/".&"SUXPSLQOH YDBTTFUT43$3005130%6$5@/".& "TTFUTYDBTTFUT
μϛʔΞηοτ໌֬ʹϓϩδΣ ΫτΛ͚ͯཧ͢Δ
μϛʔΞηοτͷ՝ J04ΞϓϦͰΞϓϦʹσόοάϝχϡʔΛදࣔͯ͠6* ͷ֬ೝΛ͢Δͷྑ͋͘Δख๏ σόοά༻ͷ7JFX$POUSPMMFS#VJME$POpHVSBUJPO ͰӅͤΔ͕ΞηοτӅ͠ʹ͍͘
μϛʔΞηοτͷ՝ ͔͠͠ɺΞϓϦʹόϯυϧͯ͠͠·͏ͱʜ w ஶ࡞ݖతʹϚζΠը૾͕ʜ w ϦϦʔεલͷΞΠςϜը૾͕ʜ w ٸᬎऔΓԼ͛Δࣄʹͳͬͨը૾͕ʜ
ػೳ͝ͱʹQSPKFDUཧ
QSPKFDUʹػೳ2"༻ͷΞϓϦλʔήοτΛஔ
ػೳ2"༻ͷΞϓϦͷYDBTTFUTͰཧ
·ͱΊ w "TTFU-JUFSBMΘͳ͍ w จࣈྻͰϦιʔεʹΞΫηε͠ͳ͍ w *OUFSGBDFCVJMEFSͷதͰը૾Λઃఆ͠ͳ͍ w ΞϓϦΞΠίϯ୯Ұιʔε͔Βੜ