abstract-document(抽象文档)
对于一个频繁修改的对象,通常我们用mongo来存储,但是在java代码里面就不好改了,现在我们引入抽象文档pattern,类的所有属性都通过接口来定义
比如Car 第一阶段
Car{
double price;
}
第二阶段
Car{
double price;
String brand;
}
频繁的修改是个体力活,我们要避免
修改如下
Car{
Map<String,Object> properties;
}
interface HasPrice{
String price;
}
interface HasBrand{
String brand;
}
main{
Car::setProperties(apply(
map.put(HasPrice.price,200.00)
map.put(HasBrand,"奥迪")
))
}