摘要: 从上文看到,经过引入Adapter模式,原有的结构得到了改进。但我们还需要从客户的角度分析程序,使结构更加地合理。(这里,我们仅限于考察对象的Adapter模式。类的Adapter模式不存在下述问题。这也印证了一个事实,就是:对象的Adapter模式和类的Adapter模式各有优势,也各有缺点,设计时应根据实际情况考察。) 阅读全文
posted @ 2008-03-05 13:22 白虎 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 那么怎样为RM,MPEG类提供IMedia接口所不具备的Resize()方法呢?非常自然地,通过这个问题我们就引出Adapter模式的命题了。首先,要假设一个情况,就是原文的所有代码,我们是无法改变的,这包括暴露的接口,类与接口的关系等等,都无法通过编码的方式实现新的目标。只有这样,引入Adapter模式才有意义。 阅读全文
posted @ 2008-03-05 13:20 白虎 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 为了更好的理解设计思想,实例尽可能简单化。但随着需求的增加,程序将越来越复杂。此时就有修改设计的必要,重构和设计模式就可以派上用场了。最后当设计渐趋完美后,你会发现,即使需求不断增加,你也可以神清气闲,不用为代码设计而烦恼了。 阅读全文
posted @ 2008-03-05 13:17 白虎 阅读(252) 评论(1) 推荐(0) 编辑
摘要: 面向对象程序设计中的另外一个重要概念是多态性。在运行时,可以通过指向基类的指针,来调用实现派生类中的方法。可以把一组对象放到一个数组中,然后调用它们的方法,在这种场合下,多态性作用就体现出来了,这些对象不必是相同类型的对象。当然,如果它们都继承自某个类,你可以把这些派生类,都放到一个数组中。 如果这些对象都有同名方法,就可以调用每个对象的同名方法。本节课将向你介绍如何完成这些事情。 阅读全文
posted @ 2008-03-05 13:15 白虎 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 等待着,煎熬中等待着,换份工作等待着,等待着消息, 阅读全文
posted @ 2008-03-05 09:00 白虎 阅读(279) 评论(0) 推荐(0) 编辑
非常感谢dudu,感谢博客园提供的各种服务。
联系白虎(David.Du)