「Repository」という言葉のニュアンスを捉えたい
from:データレイヤ/Android
直訳:「倉庫」
Githubでは
「データ置き場」のように捉えていたiNoma.icon
データレイヤ/Androidでは
「Repository」と呼ばれるクラスの利用を推奨
Repository classが提供する機能
アプリの他の部分にデータを公開する
データの変更を一元管理する
複数のデータソース間の競合を解決する
アプリの他の部分からデータソースを抽象化する
ビジネス ロジックを格納する
データレイヤの具体例を眺めるのが良さそう
その後、抽象の梯子を登る
DDDでは
データベースへのアクセスを隠蔽する
オブジェクトを扱う倉庫のような感じ
code:kotlin
// オブジェクトを保存
val user: User = ...
userRepository.save(user)
// 保存したオブジェクトを取得
val user = userRepository.findById(userId)
参考:DDDを実践するための手引き(リポジトリパターン編)