У меня есть ряд вложенных объектов, подвергаются над REST API, например, так:Извлечение и кэширование вложенных объектов из REST API
class Category
{
int id;
string name;
List<Subcategory> subcategories;
}
class Subcategory
{
int id;
string name;
List<Product> products;
}
class Product
{
int id;
string name;
List<Model> models;
}
class Model
{
int id;
string name;
Dictionary<string, string> metadata;
}
Эти объекты могут быть доступны через REST API со следующими конечными точками
// get a list of categories
GET /categories
// get a category
GET /categories/:id
// Get subcategories for a product
GET /categories/:categoryId/subcategories
// Get a subcategory
GET //categories/:categoryId/:subcategoryId
//Get products under a subcategory
GET /categories/:categoryId/:subcategoryId/products
//Get a product
/categories/:categoryId/:subcategoryId/:productId
//Get models
/categories/:categoryId/:subcategoryId/:productId/models
Get a model under a product
/categories/:categoryId/:subcategoryId/:productId/:modelId
Какую модель дизайна я использую для создания слоя доступа к данным на стороне клиента? Обратите внимание, что мой клиент только читает эти объекты, он не пишет им. DAO? Repository? Я немного смущен между ними, не уверен, что будет применимо здесь.
потому что ваш клиент обращается к этим объектам через RESTful api, почему бы не воспользоваться кешированием HTTP? – swazza85