SlideShare a Scribd company logo
1 of 56
Download to read offline
Photos vs AssetLibrary
Twitter: @notoroid
Twitter: @irimasu
お題目
• 写真関連アクセス用フレームワークPhotos.framework
• AssetsLibraryと比べるPhotos.framework
• PHImageManager
• まとめ
自己紹介
• 個人開発者
• 屋号: いります電算企画
• Twitter: irimasu
• Twitter: notoroid
• 喫茶作業者
写真関連アクセス用
フレームワーク
Photos.framework
iOS9 が公開!
iO8以上のデバイスも9割超えているし
Earlier
10%
iOS8
33%
iOS9
57%
AppStore on October 5,2015
アプリもiOS8 からの
サポートにするか!
やったね!
そこに忍び寄る影
AssetLibrary.framework は
iOS9 でdeprecated になるよ!
AssetsLibrary.frameworkの
かわりに
Photos.frameworkを使ってね
そもそも
AssetLibrary.framework
って何?
そもそも
AssetLibrary.framework って何?
• iOS SDKに含まれるフレームワークの一つ
• カメラロールの写真からサムネイル、画面サイズ
の写真、オリジナル写真、ムービーにアクセス可
能
• iOS4 SDKから公開
• iOS5 SDKでPhotoStreamに対応
写真映像を扱うライブラリと
して写真アプリには必須な
framework として長年活躍
対して
Photos.framework
とは?
Photos.framework
• iOS SDKに含まれるフレームワークの一つ
• カメラロールの写真から取得方法を指定して写真取得可能、オリジナルの写真、
ムービーにアクセス可能
• iCloud PhotoLibrary(クラウド)へのアクセスが可能
• コレクション(収集ルールごとにまとめられた写真)へのアクセスが可能
• ブラスト撮影など特殊な写真への対応
• 写真の編集が可能(写真.appの編集機能をアプリでも可能に)
• 写真バージョンの管理
• iOS7 SDKから公開
できることが多すぎる
写真取得だけに絞る
Photos.framework
• iOS SDKに含まれるフレームワークの一つ
• カメラロールの写真から取得方法を指定して写真取得可
能、オリジナルの写真、ムービーにアクセス可能
• iCloud PhotoLibrary(クラウド)へのアクセスが可能
• コレクション(収集ルールごとにまとめられた写真)への
アクセスが可能
• iOS8 SDKから公開
AssetsLibrary.framework登場時
にはなかったクラウドへの対応に重
きをおいたのがPhotos.framework
iOS8 以降をサポートしていくのであ
れば、AssetLibrary.frameworkから
Photos.framework への移行が必要
AssetsLibraryと比べる
Photos.framework
変更に伴う相違点
• 1.プリフィックス
• 2.トップレベルクラスの変更
• 3.非同期対応
• 4.モデルの変更
• 5.写真へのアクセス
1. プリフィックス
• AL (AssetsLibrary) • PH (PHotos)
AssetsLibrary.framework Photos.framework
2.トップレベルクラス
• クラス名
• ALAssetsLibrary
• 共有オブジェクト
• なし
• クラス名
• PHPhotoLibrary
• 共有オブジェクト
• [PHPhotoLibrary
sharedPhotoLibrar
y]
AssetsLibrary.framework Photos.framework
2.写真へのアクセス
• クラス名
• ALAssetsLibrary
• 共有オブジェクト
• なし
• クラス名
• PHPhotoLibrary
• 共有オブジェクト
• [PHPhotoLibrary
sharedPhotoLibrar
y]
AssetsLibrary.framework Photos.framework
3.非同期対応
• 同期でのみアクセス
を許可。
• スレッドセーフで読み
込みが可能(メインス
レッドorバックグラ
ウンドスレッド)
• 非同期で写真にアク
セスする。アプリ開
発者はメインスレッ
ドのみを意識すれば
よい。
AssetsLibrary.framework Photos.framework
4.モデルの変更
• ALAssetsLibrary (管理オブジェクト)
• ALAssetsGroup(写真グループ)
• ALAsset(写真アセットとサムネイル画像)
• ALAssetRepresentation(写真アセットの実際のデータオブ
ジェクト)
• 4つのオブジェクトでモデルを構成
AssetsLibrary.framework
Photos vs Assets Library - いまさら始めるPhotos.framework
4.モデルの変更
• PHCollectionList (コレクションリスト)
• PHAssetCollection (写真アセットのコレクション)
• PHAsset (写真アセット)
• PHFetchResult
• 4つのオブジェクトのうちPHFetchResult はオブジェクト
の列挙用
Photos.framework
Photos vs Assets Library - いまさら始めるPhotos.framework
4.モデルの変更
• カメラロールにアクセスするだけならば簡素
Photos.framework
4.モデルの変更
• Photos.framework はモデル構造にアクセスす
る際にトップレベルオブジェクトが関与しない
• PHCollectionList、PHAssetCollectionのクラ
スメソッドで最初のモデルオブジェクトを入手で
きる
• Photos.frameworkはAssetsLibrary.framework
に比べてモデル構造の見通しが悪くなったかも
5.写真へのアクセス
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library enumerateGroupsWithTypes:ALAssetsGroupSavedPhotos
usingBlock:^(ALAssetsGroup *group, BOOL *stop) {
NSLog(@"group.numberOfAssets=%@",@(group.numberOfAssets) );
id obj = [group valueForProperty:ALAssetsGroupPropertyName];
NSLog(@"ALAssetsGroupPropertyName=%@",obj);
[group enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop)
{
// resultを使って画像を取得
}];
*stop = YES;
} failureBlock:^(NSError *error) {
}];
AssetsLibrary.framework
5.写真へのアクセス
// PHAssetCollectionを取得
PHFetchResult *assetCollections = [PHAssetCollection
fetchAssetCollectionsWithType:PHAssetCollectionTypeSmartAlbum
subtype:PHAssetCollectionSubtypeSmartAlbumUserLibrary options:nil];
[assetCollections enumerateObjectsUsingBlock:^(PHAssetCollection
*smartFolderAssetCollection, NSUInteger idx, BOOL *stop) {
NSLog(@"momentAssetCollection:%@", smartFolderAssetCollection);
// PHAssetを取得
PHFetchResult *assets = [PHAsset
fetchAssetsInAssetCollection:smartFolderAssetCollection options:nil];
[assets enumerateObjectsUsingBlock:^(PHAsset *asset, NSUInteger idx, BOOL *stop)
{
// asset を使って画像を取得
}];
}];
Photos.framework
5.写真へのアクセス
// PHAssetCollectionを取得
PHFetchResult *assetCollections = [PHAssetCollection
fetchAssetCollectionsWithType:PHAssetCollectionTypeSmartAlbum
subtype:PHAssetCollectionSubtypeSmartAlbumUserLibrary options:nil];
[assetCollections enumerateObjectsUsingBlock:^(PHAssetCollection
*smartFolderAssetCollection, NSUInteger idx, BOOL *stop) {
NSLog(@"momentAssetCollection:%@", smartFolderAssetCollection);
// PHAssetを取得
PHFetchResult *assets = [PHAsset
fetchAssetsInAssetCollection:smartFolderAssetCollection options:nil];
[assets enumerateObjectsUsingBlock:^(PHAsset *asset, NSUInteger idx, BOOL *stop)
{
// asset を使って画像を取得
}];
}];
Photos.framework
PHImageManager
Photos.frameworkは
画像のアクセス用に
PHImageManagerを用意
PHImageManager
• 非同期での写真取得
• 取得中にキャンセルも可能
• 取得の際に細かいパラメータ指定が可能
PHImageManagerは
良いことづくめのように
見えるが…
 実際にはAssetsLibrary
を使うようにはいかない
PHImageManagerの問題点
• キャンセルが必要なほど遅い処理もありうる
• 写真オプションを指定することで正確なサイズ
が得られるとは限らない
• 写真オプションによっては1つの写真につき複数
送られてくる
PHImageManagerの問題点2
• Photos.frameworkはローカルストレージとク
ラウドサービス(iCloud Photo Library)の両方
にアクセスするがユーザはそれらを意識しないで
アプリを使うのでもたつくように感じる
• オプションのデフォルトは1つの写真につき複数
送られてくる
PHImageRequestOptions
@property (nonatomic, assign) PHImageRequestOptionsVersion version;
@property (nonatomic, assign) PHImageRequestOptionsDeliveryMode deliveryMode;
@property (nonatomic, assign) PHImageRequestOptionsResizeMode resizeMode;
@property (nonatomic, assign) CGRect normalizedCropRect;
@property (nonatomic, assign, getter=isNetworkAccessAllowed) BOOL networkAccessAllowed;
@property (nonatomic, assign, getter=isSynchronous) BOOL synchronous;
@property (nonatomic, copy) PHAssetImageProgressHandler progressHandler;
PHImageRequestOptions
• PHImageRequestOptionsDeliveryMode deliveryMode;
• デリバリーモードを指定する
• PHImageRequestOptionsResizeMode resizeMode;
• リサイズモードを指定
• CGRect normalizedCropRect;
• クロップ領域を比率で指定
• PHAssetImageProgressHandler progressHandler;
• 画像処理中の過程ごとに呼び出されるblocksを指定
パラメーターを正確に理解し
ないと意図しない結果になる
PHImageManagerの設定
PHImageManagerの設定
PHImageManagerM
aximumSizeがすべて
のオプションに優先
PHImageManagerの設定2
PHImageRequestOpti
onsDeliveryModeOpp
ortunistic
PHImageRequestOpti
onsDeliveryModeHig
hQualityFormat
PHImageRequestOpti
onsDeliveryModeFas
tFormat
PHImageRequestOptions
ResizeModeNone
複数呼び出し
表示に十分なサイズ
複数呼び出しでの最
後に相当
複数呼び出しでの1
回目に相当
PHImageRequestOptions
ResizeModeFast
複数呼び出し
表示に十分なサイズ
複数呼び出しでの最
後に相当
表示に十分なサイズ
複数呼び出しでの1
回目に相当
表示に十分なサイズ
PHImageRequestOptions
ResizeModeExact
複数呼び出し
正確なサイズ
複数呼び出しでの最
後に相当
正確なサイズ
複数呼び出しでの1
回目に相当正確な比
率だがサイズは小さ
い
PHImageManagerの設定2
PHImageRequestOpti
onsDeliveryModeOpp
ortunistic
PHImageRequestOpti
onsDeliveryModeHig
hQualityFormat
PHImageRequestOpti
onsDeliveryModeFas
tFormat
PHImageRequestOptions
ResizeModeNone
複数呼び出し
表示に十分なサイズ
複数呼び出しでの最
後に相当
複数呼び出しでの1
回目に相当
PHImageRequestOptions
ResizeModeFast
複数呼び出し
表示に十分なサイズ
複数呼び出しでの最
後に相当
表示に十分なサイズ
複数呼び出しでの1
回目に相当
表示に十分なサイズ
PHImageRequestOptions
ResizeModeExact
複数呼び出し
正確なサイズ
複数呼び出しでの最
後に相当
正確なサイズ
複数呼び出しでの1
回目に相当正確な比
率だがサイズは小さ
い
PHImageRequestOptionsRes
izeModeNoneの
• PHImageRequestOptionsResizeModeNone
はリサイズ無しではなくリサイズ指定なし
• サイズが小さいと
PHImageRequestOptionsResizeModeFast相
当
• サイズが大きいと適当なサイズ
PHImageRequestOptions
normalizedCropRectの罠
• normalizedCropRect でオリジナル画像からのク
リップ領域を指定可能
• 指定は比率(-1.0∼1.0)
• 比率指定は顔認識などで利用するため比率となって
いるらしい
PHImageManagerの使い方
requestImageForAsset、requestImageDataForAsset のメソッドにオプションを指定する
• 1) オリジナル写真はtargetSizeにPHImageManagerMaximumSize指定一択
• 2) PHImageManagerを使って適した写真サイズを得るには
• options.deliveryMode=PHImageRequestOptionsDeliveryModeHighQualityF
ormat
• resizeMode=PHImageRequestOptionsResizeModeExact
• 3) サムネイル表示には
• options.deliveryMode=PHImageRequestOptionsDeliveryModeOpportunistic
• resizeMode=PHImageRequestOptionsResizeModeFast
まとめ
まとめ
• AssetsLibrary はiOS9 移行は使えなくなります
• 写真アクセスにはPhotos.frameworkが必要
• Photos.framework は高機能で余計に複雑です
• PHImageManagerを使いこなそう
http://irimasu.com
Twitter: @notoroid
公式: @irimasu

More Related Content

What's hot

今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介Kenichiro Nakamura
 
【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計
【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計
【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計UnityTechnologiesJapan002
 
ミクシィ 21卒向け Android研修
ミクシィ 21卒向け Android研修ミクシィ 21卒向け Android研修
ミクシィ 21卒向け Android研修akkuma
 
新社会人が今すぐ使える、​ExcelでC#を使う方法
新社会人が今すぐ使える、​ExcelでC#を使う方法新社会人が今すぐ使える、​ExcelでC#を使う方法
新社会人が今すぐ使える、​ExcelでC#を使う方法Tetsuo Honda
 
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニックinfinite_loop
 
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホンGoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホンAkihiko Horiuchi
 
Unity In App Purchase (IAP)の使い方
Unity In App Purchase (IAP)の使い方Unity In App Purchase (IAP)の使い方
Unity In App Purchase (IAP)の使い方Makoto Ito
 
ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~
ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~
ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~啓 杉本
 
ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本kazuki kumagai
 
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術Denodo
 
C++11やemscriptenと付き合って1年間の振り返り
C++11やemscriptenと付き合って1年間の振り返りC++11やemscriptenと付き合って1年間の振り返り
C++11やemscriptenと付き合って1年間の振り返りpaosidufgythrj
 
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)Hadoop / Spark Conference Japan
 
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善Ito Takayuki
 
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】Unity Technologies Japan K.K.
 
Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)
Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)
Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)gree_tech
 
ロボット管理プラットフォーム「 RoboticBase 」の紹介
ロボット管理プラットフォーム「 RoboticBase 」の紹介ロボット管理プラットフォーム「 RoboticBase 」の紹介
ロボット管理プラットフォーム「 RoboticBase 」の紹介Kazuki Urabe
 
Outlook アドイン開発入門
Outlook アドイン開発入門Outlook アドイン開発入門
Outlook アドイン開発入門Hiroaki Oikawa
 
【Unite Tokyo 2019】SPARKCREATIVE始動で見えてきた最新VFX動向とSPARKGEARの最新機能について
【Unite Tokyo 2019】SPARKCREATIVE始動で見えてきた最新VFX動向とSPARKGEARの最新機能について【Unite Tokyo 2019】SPARKCREATIVE始動で見えてきた最新VFX動向とSPARKGEARの最新機能について
【Unite Tokyo 2019】SPARKCREATIVE始動で見えてきた最新VFX動向とSPARKGEARの最新機能についてUnityTechnologiesJapan002
 
Amazon Redshiftの開発者がこれだけは知っておきたい10のTIPS / 第18回 AWS User Group - Japan
Amazon Redshiftの開発者がこれだけは知っておきたい10のTIPS / 第18回 AWS User Group - Japan Amazon Redshiftの開発者がこれだけは知っておきたい10のTIPS / 第18回 AWS User Group - Japan
Amazon Redshiftの開発者がこれだけは知っておきたい10のTIPS / 第18回 AWS User Group - Japan Koichi Fujikawa
 

What's hot (20)

今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
 
【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計
【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計
【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計
 
家庭で使うSlack
家庭で使うSlack家庭で使うSlack
家庭で使うSlack
 
ミクシィ 21卒向け Android研修
ミクシィ 21卒向け Android研修ミクシィ 21卒向け Android研修
ミクシィ 21卒向け Android研修
 
新社会人が今すぐ使える、​ExcelでC#を使う方法
新社会人が今すぐ使える、​ExcelでC#を使う方法新社会人が今すぐ使える、​ExcelでC#を使う方法
新社会人が今すぐ使える、​ExcelでC#を使う方法
 
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
 
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホンGoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
 
Unity In App Purchase (IAP)の使い方
Unity In App Purchase (IAP)の使い方Unity In App Purchase (IAP)の使い方
Unity In App Purchase (IAP)の使い方
 
ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~
ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~
ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~
 
ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本
 
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術
 
C++11やemscriptenと付き合って1年間の振り返り
C++11やemscriptenと付き合って1年間の振り返りC++11やemscriptenと付き合って1年間の振り返り
C++11やemscriptenと付き合って1年間の振り返り
 
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
 
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
 
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
 
Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)
Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)
Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)
 
ロボット管理プラットフォーム「 RoboticBase 」の紹介
ロボット管理プラットフォーム「 RoboticBase 」の紹介ロボット管理プラットフォーム「 RoboticBase 」の紹介
ロボット管理プラットフォーム「 RoboticBase 」の紹介
 
Outlook アドイン開発入門
Outlook アドイン開発入門Outlook アドイン開発入門
Outlook アドイン開発入門
 
【Unite Tokyo 2019】SPARKCREATIVE始動で見えてきた最新VFX動向とSPARKGEARの最新機能について
【Unite Tokyo 2019】SPARKCREATIVE始動で見えてきた最新VFX動向とSPARKGEARの最新機能について【Unite Tokyo 2019】SPARKCREATIVE始動で見えてきた最新VFX動向とSPARKGEARの最新機能について
【Unite Tokyo 2019】SPARKCREATIVE始動で見えてきた最新VFX動向とSPARKGEARの最新機能について
 
Amazon Redshiftの開発者がこれだけは知っておきたい10のTIPS / 第18回 AWS User Group - Japan
Amazon Redshiftの開発者がこれだけは知っておきたい10のTIPS / 第18回 AWS User Group - Japan Amazon Redshiftの開発者がこれだけは知っておきたい10のTIPS / 第18回 AWS User Group - Japan
Amazon Redshiftの開発者がこれだけは知っておきたい10のTIPS / 第18回 AWS User Group - Japan
 

Viewers also liked

Kudos - A Peer-to-Peer Discussion System Based on Social Voting
Kudos - A Peer-to-Peer Discussion System Based on Social VotingKudos - A Peer-to-Peer Discussion System Based on Social Voting
Kudos - A Peer-to-Peer Discussion System Based on Social VotingLuca Matteis
 
Laboratorios de gobierno. Innovación social aplicada a las AAPP
Laboratorios de gobierno. Innovación social aplicada a las AAPPLaboratorios de gobierno. Innovación social aplicada a las AAPP
Laboratorios de gobierno. Innovación social aplicada a las AAPP@GestionPublicav
 
Version control for PL/SQL
Version control for PL/SQLVersion control for PL/SQL
Version control for PL/SQLGerger
 
Dependencies cause organisational friction
 Dependencies cause organisational friction Dependencies cause organisational friction
Dependencies cause organisational frictionMatt Thornhill
 
Holiday Strategies Unwrapped: A Look Back at Amazon, Walmart and Others
Holiday Strategies Unwrapped: A Look Back at Amazon, Walmart and OthersHoliday Strategies Unwrapped: A Look Back at Amazon, Walmart and Others
Holiday Strategies Unwrapped: A Look Back at Amazon, Walmart and OthersNational Retail Federation
 
Eerste stap om koninklijke tuin openbaar te maken is gezet
Eerste stap om koninklijke tuin openbaar te maken is gezetEerste stap om koninklijke tuin openbaar te maken is gezet
Eerste stap om koninklijke tuin openbaar te maken is gezetThierry Debels
 
Looking for Disruptive Business Models in Higher Education
Looking for Disruptive Business Models in Higher EducationLooking for Disruptive Business Models in Higher Education
Looking for Disruptive Business Models in Higher EducationCraig Martin
 
アクセシビリティはじめました
アクセシビリティはじめましたアクセシビリティはじめました
アクセシビリティはじめましたYuichi Sugiyama
 
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門Akihiro Sugeno
 
Designing realistic medicine
Designing realistic medicineDesigning realistic medicine
Designing realistic medicineMike Press
 
Planning And Budgeting for real Strategy Execution
Planning And Budgeting  for real Strategy ExecutionPlanning And Budgeting  for real Strategy Execution
Planning And Budgeting for real Strategy ExecutionVassilios Moulakakis
 
Roaring twenties
Roaring twentiesRoaring twenties
Roaring twentiesMakala D.
 
Dijital Demokrasi: Mit, Gerçek, Hedef
Dijital Demokrasi: Mit, Gerçek, HedefDijital Demokrasi: Mit, Gerçek, Hedef
Dijital Demokrasi: Mit, Gerçek, HedefÖzgür Kurtuluş
 
Unconditional love for children - paintings
Unconditional love for children - paintingsUnconditional love for children - paintings
Unconditional love for children - paintingsMakala (D)
 
Как принимать Яндекс.Деньги — в том числе с банковских карт
Как принимать Яндекс.Деньги — в том числе с банковских картКак принимать Яндекс.Деньги — в том числе с банковских карт
Как принимать Яндекс.Деньги — в том числе с банковских картЯндекс.Деньги
 
開発を効率的に進めるられるまでの道程
開発を効率的に進めるられるまでの道程開発を効率的に進めるられるまでの道程
開発を効率的に進めるられるまでの道程Takao Sumitomo
 
Getting Started with Socialfave
Getting Started with SocialfaveGetting Started with Socialfave
Getting Started with Socialfavesocialfave
 
ゲームエンジンの歴史概要
ゲームエンジンの歴史概要ゲームエンジンの歴史概要
ゲームエンジンの歴史概要Takashi Imagire
 
GoogleのSHA-1のはなし
GoogleのSHA-1のはなしGoogleのSHA-1のはなし
GoogleのSHA-1のはなしMITSUNARI Shigeo
 
Collagen and collagen disorders
Collagen and collagen disordersCollagen and collagen disorders
Collagen and collagen disordersAchi Joshi
 

Viewers also liked (20)

Kudos - A Peer-to-Peer Discussion System Based on Social Voting
Kudos - A Peer-to-Peer Discussion System Based on Social VotingKudos - A Peer-to-Peer Discussion System Based on Social Voting
Kudos - A Peer-to-Peer Discussion System Based on Social Voting
 
Laboratorios de gobierno. Innovación social aplicada a las AAPP
Laboratorios de gobierno. Innovación social aplicada a las AAPPLaboratorios de gobierno. Innovación social aplicada a las AAPP
Laboratorios de gobierno. Innovación social aplicada a las AAPP
 
Version control for PL/SQL
Version control for PL/SQLVersion control for PL/SQL
Version control for PL/SQL
 
Dependencies cause organisational friction
 Dependencies cause organisational friction Dependencies cause organisational friction
Dependencies cause organisational friction
 
Holiday Strategies Unwrapped: A Look Back at Amazon, Walmart and Others
Holiday Strategies Unwrapped: A Look Back at Amazon, Walmart and OthersHoliday Strategies Unwrapped: A Look Back at Amazon, Walmart and Others
Holiday Strategies Unwrapped: A Look Back at Amazon, Walmart and Others
 
Eerste stap om koninklijke tuin openbaar te maken is gezet
Eerste stap om koninklijke tuin openbaar te maken is gezetEerste stap om koninklijke tuin openbaar te maken is gezet
Eerste stap om koninklijke tuin openbaar te maken is gezet
 
Looking for Disruptive Business Models in Higher Education
Looking for Disruptive Business Models in Higher EducationLooking for Disruptive Business Models in Higher Education
Looking for Disruptive Business Models in Higher Education
 
アクセシビリティはじめました
アクセシビリティはじめましたアクセシビリティはじめました
アクセシビリティはじめました
 
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
サービスが生まれてから死ぬまで @激突! Aiming x CloverLab [インフラ対決]部門
 
Designing realistic medicine
Designing realistic medicineDesigning realistic medicine
Designing realistic medicine
 
Planning And Budgeting for real Strategy Execution
Planning And Budgeting  for real Strategy ExecutionPlanning And Budgeting  for real Strategy Execution
Planning And Budgeting for real Strategy Execution
 
Roaring twenties
Roaring twentiesRoaring twenties
Roaring twenties
 
Dijital Demokrasi: Mit, Gerçek, Hedef
Dijital Demokrasi: Mit, Gerçek, HedefDijital Demokrasi: Mit, Gerçek, Hedef
Dijital Demokrasi: Mit, Gerçek, Hedef
 
Unconditional love for children - paintings
Unconditional love for children - paintingsUnconditional love for children - paintings
Unconditional love for children - paintings
 
Как принимать Яндекс.Деньги — в том числе с банковских карт
Как принимать Яндекс.Деньги — в том числе с банковских картКак принимать Яндекс.Деньги — в том числе с банковских карт
Как принимать Яндекс.Деньги — в том числе с банковских карт
 
開発を効率的に進めるられるまでの道程
開発を効率的に進めるられるまでの道程開発を効率的に進めるられるまでの道程
開発を効率的に進めるられるまでの道程
 
Getting Started with Socialfave
Getting Started with SocialfaveGetting Started with Socialfave
Getting Started with Socialfave
 
ゲームエンジンの歴史概要
ゲームエンジンの歴史概要ゲームエンジンの歴史概要
ゲームエンジンの歴史概要
 
GoogleのSHA-1のはなし
GoogleのSHA-1のはなしGoogleのSHA-1のはなし
GoogleのSHA-1のはなし
 
Collagen and collagen disorders
Collagen and collagen disordersCollagen and collagen disorders
Collagen and collagen disorders
 

Similar to Photos vs Assets Library - いまさら始めるPhotos.framework

yidev第七回勉強会:「Assets Library手習い」発表資料
yidev第七回勉強会:「Assets Library手習い」発表資料yidev第七回勉強会:「Assets Library手習い」発表資料
yidev第七回勉強会:「Assets Library手習い」発表資料Hirohito Kato
 
AITCオープンラボ 第4回 IoT勉強会 〜 Pepper x IoT x Web 〜
AITCオープンラボ 第4回 IoT勉強会 〜 Pepper x IoT x Web 〜AITCオープンラボ 第4回 IoT勉強会 〜 Pepper x IoT x Web 〜
AITCオープンラボ 第4回 IoT勉強会 〜 Pepper x IoT x Web 〜Hirokazu Egashira
 
iPhoneカメラアプリ開発入門(第1回)
iPhoneカメラアプリ開発入門(第1回)iPhoneカメラアプリ開発入門(第1回)
iPhoneカメラアプリ開発入門(第1回)Takashi Ohtsuka
 
個人開発アプリの紹介と実装内容の概要
個人開発アプリの紹介と実装内容の概要個人開発アプリの紹介と実装内容の概要
個人開発アプリの紹介と実装内容の概要furusin
 
UE4でAIとビヘイビアツリーと-基礎-
UE4でAIとビヘイビアツリーと-基礎-UE4でAIとビヘイビアツリーと-基礎-
UE4でAIとビヘイビアツリーと-基礎-com044
 
絶対落ちないアプリの作り方
絶対落ちないアプリの作り方絶対落ちないアプリの作り方
絶対落ちないアプリの作り方Fumihiko Shiroyama
 
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)Fumiya Sakai
 
React Native GUIDE
React Native GUIDEReact Native GUIDE
React Native GUIDEdcubeio
 
[iOS 8] iOS8勉強会 PhotoKit
[iOS 8] iOS8勉強会 PhotoKit[iOS 8] iOS8勉強会 PhotoKit
[iOS 8] iOS8勉強会 PhotoKitShingo Hiraya
 
「Windows 8 ストア アプリ開発 tips」 hokuriku.net vol.11 (2013年1月26日)
「Windows 8 ストア アプリ開発 tips」  hokuriku.net vol.11 (2013年1月26日)「Windows 8 ストア アプリ開発 tips」  hokuriku.net vol.11 (2013年1月26日)
「Windows 8 ストア アプリ開発 tips」 hokuriku.net vol.11 (2013年1月26日)Fujio Kojima
 
Material Designなdrawerを実装したい
Material Designなdrawerを実装したいMaterial Designなdrawerを実装したい
Material Designなdrawerを実装したいshinya sakemoto
 
Firebase hands on in Matsuyama
Firebase hands on in MatsuyamaFirebase hands on in Matsuyama
Firebase hands on in Matsuyama健一 辰濱
 
ABC 2011 Summer
ABC 2011 SummerABC 2011 Summer
ABC 2011 Summermiyatay
 
GitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェアGitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェアAtsushi Matsuo
 
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。Hiroyuki Mori
 
試して感覚を掴んでみるUICollectionViewCompositionalLayout & Combine
試して感覚を掴んでみるUICollectionViewCompositionalLayout & Combine試して感覚を掴んでみるUICollectionViewCompositionalLayout & Combine
試して感覚を掴んでみるUICollectionViewCompositionalLayout & CombineFumiya Sakai
 

Similar to Photos vs Assets Library - いまさら始めるPhotos.framework (20)

yidev第七回勉強会:「Assets Library手習い」発表資料
yidev第七回勉強会:「Assets Library手習い」発表資料yidev第七回勉強会:「Assets Library手習い」発表資料
yidev第七回勉強会:「Assets Library手習い」発表資料
 
AITCオープンラボ 第4回 IoT勉強会 〜 Pepper x IoT x Web 〜
AITCオープンラボ 第4回 IoT勉強会 〜 Pepper x IoT x Web 〜AITCオープンラボ 第4回 IoT勉強会 〜 Pepper x IoT x Web 〜
AITCオープンラボ 第4回 IoT勉強会 〜 Pepper x IoT x Web 〜
 
iPhoneカメラアプリ開発入門(第1回)
iPhoneカメラアプリ開発入門(第1回)iPhoneカメラアプリ開発入門(第1回)
iPhoneカメラアプリ開発入門(第1回)
 
個人開発アプリの紹介と実装内容の概要
個人開発アプリの紹介と実装内容の概要個人開発アプリの紹介と実装内容の概要
個人開発アプリの紹介と実装内容の概要
 
UE4でAIとビヘイビアツリーと-基礎-
UE4でAIとビヘイビアツリーと-基礎-UE4でAIとビヘイビアツリーと-基礎-
UE4でAIとビヘイビアツリーと-基礎-
 
絶対落ちないアプリの作り方
絶対落ちないアプリの作り方絶対落ちないアプリの作り方
絶対落ちないアプリの作り方
 
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
 
React Native GUIDE
React Native GUIDEReact Native GUIDE
React Native GUIDE
 
[iOS 8] iOS8勉強会 PhotoKit
[iOS 8] iOS8勉強会 PhotoKit[iOS 8] iOS8勉強会 PhotoKit
[iOS 8] iOS8勉強会 PhotoKit
 
APIMeetup 20170329_ichimura
APIMeetup 20170329_ichimuraAPIMeetup 20170329_ichimura
APIMeetup 20170329_ichimura
 
Dependency injection
Dependency injectionDependency injection
Dependency injection
 
「Windows 8 ストア アプリ開発 tips」 hokuriku.net vol.11 (2013年1月26日)
「Windows 8 ストア アプリ開発 tips」  hokuriku.net vol.11 (2013年1月26日)「Windows 8 ストア アプリ開発 tips」  hokuriku.net vol.11 (2013年1月26日)
「Windows 8 ストア アプリ開発 tips」 hokuriku.net vol.11 (2013年1月26日)
 
Firefoxosハンズオン
FirefoxosハンズオンFirefoxosハンズオン
Firefoxosハンズオン
 
Material Designなdrawerを実装したい
Material Designなdrawerを実装したいMaterial Designなdrawerを実装したい
Material Designなdrawerを実装したい
 
Firebase hands on in Matsuyama
Firebase hands on in MatsuyamaFirebase hands on in Matsuyama
Firebase hands on in Matsuyama
 
ABC
ABC ABC
ABC
 
ABC 2011 Summer
ABC 2011 SummerABC 2011 Summer
ABC 2011 Summer
 
GitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェアGitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェア
 
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
 
試して感覚を掴んでみるUICollectionViewCompositionalLayout & Combine
試して感覚を掴んでみるUICollectionViewCompositionalLayout & Combine試して感覚を掴んでみるUICollectionViewCompositionalLayout & Combine
試して感覚を掴んでみるUICollectionViewCompositionalLayout & Combine
 

More from Kaname Noto

SwiftUIのライブコーディングするとxcodeが◯回落ちる
SwiftUIのライブコーディングするとxcodeが◯回落ちるSwiftUIのライブコーディングするとxcodeが◯回落ちる
SwiftUIのライブコーディングするとxcodeが◯回落ちるKaname Noto
 
iOS13 SDK による 全機能置き換え Part1
iOS13 SDK による 全機能置き換え Part1iOS13 SDK による 全機能置き換え Part1
iOS13 SDK による 全機能置き換え Part1Kaname Noto
 
明日のためのBaaS - BaaS for tomorrow
明日のためのBaaS - BaaS for tomorrow明日のためのBaaS - BaaS for tomorrow
明日のためのBaaS - BaaS for tomorrowKaname Noto
 
iOS グラフィックス Tips
iOS グラフィックス TipsiOS グラフィックス Tips
iOS グラフィックス TipsKaname Noto
 
Core Data バッドプラクティス
Core Data バッドプラクティスCore Data バッドプラクティス
Core Data バッドプラクティスKaname Noto
 

More from Kaname Noto (6)

SwiftUIのライブコーディングするとxcodeが◯回落ちる
SwiftUIのライブコーディングするとxcodeが◯回落ちるSwiftUIのライブコーディングするとxcodeが◯回落ちる
SwiftUIのライブコーディングするとxcodeが◯回落ちる
 
iOS13 SDK による 全機能置き換え Part1
iOS13 SDK による 全機能置き換え Part1iOS13 SDK による 全機能置き換え Part1
iOS13 SDK による 全機能置き換え Part1
 
Firebase 概要
Firebase 概要Firebase 概要
Firebase 概要
 
明日のためのBaaS - BaaS for tomorrow
明日のためのBaaS - BaaS for tomorrow明日のためのBaaS - BaaS for tomorrow
明日のためのBaaS - BaaS for tomorrow
 
iOS グラフィックス Tips
iOS グラフィックス TipsiOS グラフィックス Tips
iOS グラフィックス Tips
 
Core Data バッドプラクティス
Core Data バッドプラクティスCore Data バッドプラクティス
Core Data バッドプラクティス
 

Recently uploaded

2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor arts yokohama
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~arts yokohama
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法ssuser370dd7
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdfAyachika Kitazaki
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦Sadao Tokuyama
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)ssuser539845
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-LoopへTetsuya Nihonmatsu
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見Shumpei Kishi
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfMatsushita Laboratory
 

Recently uploaded (12)

2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
 
2024 04 minnanoito
2024 04 minnanoito2024 04 minnanoito
2024 04 minnanoito
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
 
2024 03 CTEA
2024 03 CTEA2024 03 CTEA
2024 03 CTEA
 
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
 

Photos vs Assets Library - いまさら始めるPhotos.framework