假設一個很常見的場景: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 }
}請問有什么更好的設計模式嗎?
如何設計一個 DataSource/Service 類以獲取網絡或本地數據?
繁星coding
2019-02-05 20:11:48