IOS GoodsModel 详解

GoodsModel :一个商品信息的缓存中心。

核心功能:

对每个存进来的商品信息添加时间戳;

对于过期的商品信息进行更新;

对于没有的商品信息请求数据;

更新时只更新有请求、并且过期的内容;

更新完后,信息回调。

对象有:

GoodsModel 缓存中心

dict 缓存的字典,key 是商品id,值是SimpleGoods

SimpleGoods 详细的商品数据

invalidArr 需要更新的商品id 数组

时间戳在simpleGoods初始化处写好(oc 特性,从defaultCenter 拉出来的数据,不会走init);

当以商品id为key查找goods的时候,检查时间戳,如果过期或者没有这个数据,那么把这个id放入invalidArr;

当invalidArr的数组元素个数不为零的时候,启动一个定时器,0.3秒后调用更新函数;

更新函数把invalidArr 的数据发送给goodsMessage;

goodsMessage收到服务器的数据,更新GoodsModel内的数据;

GoodsModel 发出 NOTIFY_GOODS_DATA_CHANGE 的事件;

需要更新的view监听数据,并且更新内容。

原文地址:https://www.cnblogs.com/loying/p/4811457.html