假設一個很常見的場景:XYZMovie(一個虛構電影網(wǎng)站)提供了接口可以讓開發(fā)者獲取某部電影的基本信息(電影名、演員、放映時間、評分等)接口類似這樣:http:api.xyzmovie.com/get?nam...我利用爬蟲緩存了該網(wǎng)站的數(shù)據(jù)到本地數(shù)據(jù)庫,現(xiàn)在有一個電影查詢程序,它應該能設置本地或網(wǎng)絡優(yōu)先查詢,如本地或網(wǎng)絡查詢無果則換另一種查詢: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 類以獲取網(wǎng)絡或本地數(shù)據(jù)?
繁星coding
2019-02-05 20:11:48