Posted on 2009-04-06 18:00 
S.l.e!ep.¢% 阅读(1831) 
评论(3)  编辑 收藏 引用  所属分类: 
Design Pattern 
			 
			
		 
		与其说“也谈”
事实上就是看完,
设计模式之Observer模式 的读后感
 大概就是“人云亦云”的意思
在过去的代码中,大概也就只粗略地用了 工厂跟Observer 了
书上和网上的例子看不过少,但实际用起来才发现不是那么回事
void notify(AccountArgs args)
 {
        for(list<IObserver*>::iterator itr = observerList.begin();itr!=observerList.end();itr++)
       {
             (*itr)->Update(args);
       }
}
在应用中可能有n个参数
     那么会有 n 个 notify版本
    void notify(AccountArgs args1);
    void notify(AccountArgs args1, AccountArgs args2);
    ……
见到有人把参数又定义成了一个个结构, 也有人用了模板函数来调用……
        for(list<IObserver*>::iterator itr = observerList.begin();itr!=observerList.end();itr++)
       {
             (*itr)->Update(args);
       }
这个循环是阻塞的,如果你没异步实现的话,
如果是一个服务器程序,如果是阻塞的,效率很低