假设一个很常见的场景:XYZMovie(一个虚构电影网站)提供了接口可以让开发者获取某部电影的基本信息(电影名、演员、放映时间、评分等)接口类似这样:http:api.xyzmovie.com/get?nam...我利用爬虫缓存了该网站的数据到本地数据库,现在有一个电影查询程序,它应该能设置本地或网络优先查询,如本地或网络查询无果则换另一种查询:class XYZMovieDataSource{
XYZMovie GetMovie(string id or name, etc, priority)
{
XYZMovie m; if(priority == local) { dosomething } else { dosomething } return m;
}
XYZMovie GetMovieFromLocal(string id or name, etc) { dosomething } XYZMovie GetMovieFromNetwork(string id or name, etc) { dosomething }
}请问有什么更好的设计模式吗?
1 回答
largeQ
TA贡献2039条经验 获得超7个赞
没有发现有使用设计模式的必要,如果非要说,我觉得可以通过url的路径将两种方式区分开,一个叫cache(也就是你的local),一个叫origin(也就是你的network)
添加回答
举报
0/150
提交
取消