摘要: 无废话C#设计模式之十六:State 意图 允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。 场景 我们在制作一个网上书店的网站,用户在书店买了一定金额的书后可以升级为银会员、黄金会员,不同等级的会员购买书籍有不同的优惠。你可能会想到可以在User类的BuyBook方法中判断用户历史消费的金额来给用户不同的折扣,在GetUse... 阅读全文
posted @ 2007-10-13 15:50 lovecherry 阅读(4722) 评论(2) 推荐(3) 编辑
摘要: 无废话C#设计模式之十五:Strategy 意图 定义一系列的算法,把它们一个一个封装起来,并且使它们可相互替换。本模式使得算法可以独立于它的客户而变化。 场景 在开发程序的时候,我们经常会根据环境不同采取不同的算法对对象进行处理。比如,在一个新闻列表页面需要显示所有新闻,而在一个新闻搜索页面需要根据搜索关键词显示匹配的新闻。如果在新闻类内部有一个S... 阅读全文
posted @ 2007-10-13 12:13 lovecherry 阅读(4996) 评论(4) 推荐(2) 编辑