Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
On-Demand Resourcesを意識した コンテンツ制作ワークフロー
Search
Noritaka Kamiya
December 16, 2015
Programming
2.8k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
On-Demand Resourcesを意識した コンテンツ制作ワークフロー
Noritaka Kamiya
December 16, 2015
More Decks by Noritaka Kamiya
See All by Noritaka Kamiya
キラリと光るテクニック、アプリをデモするときの心構え/iOSDC Japan 2018
nolili
4
3.7k
WWDC Pre meeting
nolili
1
3.5k
FastLane with Swift
nolili
0
190
App Transport Securityとローカルネットワーキング/iOSDC Japan 2017
nolili
1
1.7k
iOS Test Night #4
nolili
0
4.2k
SwiftFriendlyObjective-C/try! Swift Tokyo 2017 RejectCon
nolili
1
1.1k
iOSアプリ開発のCI/CD環境とユビレジでのtry / CI CDNight
nolili
1
1.8k
ユビレジiOSアプリ開発のCI/CD環境 / iOS Test Night #1
nolili
5
2.5k
Modern Core Data(iOS 10)
nolili
0
1.4k
Other Decks in Programming
See All in Programming
iOSDC Japan 2026 - Swiftで作って学ぼう!データベース自作入門
kaseken
2
170
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
120
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
120
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
270
How I Stole PSI from Android Studio - DroidKaigi2026
worker8
0
130
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1k
AIエージェント時代のコードレビューを設計する
nogu66
6
2.7k
AGENTS.md Is Not Enough:Build Skills, Don't Download Them
lx_t
0
120
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
4.6k
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
7
2k
wkhtmltopdfの次どうするか問題2026
willnet
1
960
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
410
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
3
4.3k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
200
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Optimising Largest Contentful Paint
csswizardry
37
4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
The browser strikes back
jonoalderson
0
1.7k
Crafting Experiences
bethany
1
340
How to build a perfect <img>
jonoalderson
1
6k
How to Talk to Developers About Accessibility
jct
2
550
Site-Speed That Sticks
csswizardry
13
1.5k
Why Our Code Smells
bkeepers
PRO
340
58k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Transcript
On-Demand ResourcesΛҙࣝͨ͠ ίϯςϯπ੍࡞ϫʔΫϑϩʔ @nolili Noritaka Kamiya
None
None
None
UW04ʹΞϓϦΛҠ২͢Δͧʂ w J04Y࣌ʹ࡞ͬͨͷ w 6*,JU "VEJP2VFVF4FSWJDFT w 4UPSZCPBSEΈͳ͓ͨ͠Β΄ͱΜͲಈ͍ͨ
ϑΝΠϧαΠζ͕େ͖͗͢Δʂ w UW04ͷΞϓϦɿόϯυϧαΠζʹ.#ͷ੍ݶ w 4BOECPYͷσʔλอଘෆՄ w Γ0O%FNBOE3FTPVSDFTͰ
0O%FNBOE3FTPVSDFT w ΞϓϦຊମͱผͰඞཁͳσʔλ͕ൃੜͨ࣌͠Ͱ αʔό͔ΒඞཁͳσʔλΛऔಘ͢Δ w ॳճμϯϩʔυ࣌ͷ௨৴ΛݮΒͤΔ
Ϣʔεέʔε w ϓϨΠ͞ΕΔ͔Θ͔Βͳ͍ޙͷεςʔδͷσʔλ w ՝ۚͨ͠Ϣʔβ͔͠Θͳ͍σʔλ w ετϨʔδ༰ྔ͕(#ͷσόΠεʹ༏͍͠ w UW04Ҏ֎Ͱ͑Δ
try!
5BHΛ͚ͭΔ w 9DPEFͰϦιʔεʹUBHΛ͚ͭΔ
ϦιʔεʹΞΫηε͢Δ let request = NSBundleResourceRequest(tags: Set(["town"]))
ϦιʔεʹΞΫηε͢Δ request1.beginAccessingResourcesWithCompletionHandler { error in guard error == nil else
{ return } guard let image = UIImage(named: "myImage") else { fatalError("image not found") } print(image) }
3FMFBTF request.endAccessingResources()
ʊਓਓਓਓਓਓਓਓʊ ʼɹࢀরΧϯλɹʻ ʉ:?:?:?:?:?:?:ʉ
None
མͱ݀͠ w "QQ4UPSFͰ͢Δ߹"QQMFͷαʔόͰϗ εςΟϯά͢Δඞཁ͕͋Δ w ։ൃதಠࣗͷαʔό͕͑Δ w &OUFSQSJTF༻ΞϓϦϓϩμΫγϣϯͰಠࣗαʔ ό͕͑Δ
ςετ࣌ʹಠࣗαʔόʹΞηοτΛஔ͘ w CVJMEσΟϨΫτϦͷσʔλΛอଘ͢Δ w 0SHBOJ[FS͔ΒσʔλΛॻ͖ग़͢ w "44&5@1"$,@."/*'&45@63-@13&'*9Λઃఆ
4FSWFS ODR 2015-12-05 16-31-40 python -m SimpleHTTPServer Serving HTTP on
0.0.0.0 port 8000 ... 127.0.0.1 - - [05/Dec/2015 16:35:40] "HEAD /OnDemandResources/li.noli.ODR.2nd.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 16:35:40] "GET /OnDemandResources/li.noli.ODR.2nd.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 16:35:44] "HEAD /OnDemandResources/li.noli.ODR.1st.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 16:35:44] "GET /OnDemandResources/li.noli.ODR.1st.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:07:03] "GET /OnDemandResources/AssetPackManifest.plist HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:51:08] "HEAD /OnDemandResources/li.noli.ODR.2nd.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:51:13] "GET /OnDemandResources/li.noli.ODR.2nd.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:51:14] "HEAD /OnDemandResources/li.noli.ODR.1st.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:51:14] "GET /OnDemandResources/li.noli.ODR.1st.assetpack HTTP/1.1" 200 -
མͱ݀͠ɹͦͷ w LJMM͞Εͨ͋ͱ͍ͭσʔλ͕ফ͑Δ͔Θ͔Βͳ͍ w ΞϓϦ͋ͨΓ࠷େ(#ͷϦιʔεΛѻ͑Δ w ಉ࣌ʹ CFHJO"DDFTTJOH3FTPVSDFT8JUI$PNQMFUJPO)BO EMFSͰ͖Δͷ(#·Ͱ w
͍Βͳ͘ͳͬͨΒFOE"DDFTTJOH3FTPVSDFTΛ ͬͯΞΫηεΛࢭΊΔ
*OJUJBM*OTUBMM5BH w "QQ4UPSFͰΞϓϦΠϯετʔϧ࣌ʹಉ࣌ʹΠϯε τʔϧ͞ΕΔ w ͳ͔ͥ"QQ*%ͱ1SPWJTJPOJOH1SPpMFͰ1VTI /PUJpDBUJPOΛ༗ޮʹ͓͔ͯ͠ͳ͍ͱ͍͚ͳ͔ͬ ͨɻʢ9DPEFͰαϒϛοτ࣌ʹΤϥʔʣ
"QQ4UPSF.#ͷน w .#ͷ੍ݶʹؚ·ΕΔͷ w "QQMJDBUJPO#VOEMF ΞϓϦຊମ w *OJUJBM*OTUBMM
0O%FNBOE3FTPVSDFTΛҙࣝͨ͠ ίϯςϯπ੍࡞ w ͋Δ͋Δ w Τϯδϯ͚ͩ࡞ͬͯɺͱΓ͋͑ͣ৹ࠪ௨ͯ͠ɺ͋ͱ ͔ΒαʔόͷϦιʔεೖΕସ͑Α͏ʂ
0O%FNBOE3FTPVSDFTΛҙࣝͨ͠ ίϯςϯπ੍࡞ w ͋Δ͋Δ w Τϯδϯ͚ͩ࡞ͬͯɺͱΓ͋͑ͣ৹ࠪ௨ͯ͠ɺ͋ͱ ͔ΒαʔόͷϦιʔεೖΕସ͑Α͏ʂ X
0O%FNBOE3FTPVSDFTΛҙࣝͨ͠ ίϯςϯπ੍࡞ 㾎શͯͷΞηοτ͕ἧ͍ͬͯΔ͜ͱ 㾎దͳUBH͕ৼΒΕ͍ͯΔ͜ͱ 㾎ڊେͳσʔλͷ༗ແ
0O%FNBOE3FTPVSDFTΛҙࣝͨ͠ ίϯςϯπ੍࡞ 㾎Ͳ͜ͰϢʔβΛ͍͍ͨͤͯͷ͔ʁ 㾎ॳճىಈ࣌ʹΦϑϥΠϯͷϢʔβ͕Ͳͷ֊·Ͱί ϯςϯπʹΞΫηε͢Δͷ͔ʁ 㾎4VCNJU࣌ʹτϥϒϧൃ֮ͭΒ͍ 㾎5FTUqJHIUͰςετ͢Δ
3FGFSFODFT 0O%FNBOE3FTPVSDFT(VJEF IUUQTEFWFMPQFSBQQMFDPNKQEPDVNFOUBUJPO'JMF.BOBHFNFOU$PODFQUVBM 0O@%FNBOE@3FTPVSDFT@(VJEF "QQ5IJOOJOH IUUQTEFWFMPQFSBQQMFDPNMJCSBSZUWPTEPDVNFOUBUJPO*%&T$PODFQUVBM "QQ%JTUSJCVUJPO(VJEF"QQ5IJOOJOH"QQ5IJOOJOHIUNM &YBNQMF$PEF0%34UVEZ IUUQTHJUIVCDPNOPMJMJ0%34UVEZ
On-Demand ResourcesΛҙࣝͨ͠ ίϯςϯπ੍࡞ϫʔΫϑϩʔ @nolili Noritaka Kamiya