为了账号安全,请及时绑定邮箱和手机立即绑定

如何设计一个 DataSource/Service 类以获取网络或本地数据?

如何设计一个 DataSource/Service 类以获取网络或本地数据?

繁星coding 2019-02-05 20:11:48
假设一个很常见的场景: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)

查看完整回答
反对 回复 2019-02-05
  • 1 回答
  • 0 关注
  • 456 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信