代码改变世界

随笔分类 -  [设计模式学习]

[设计模式]设计模式

2014-05-15 19:22 by hellenism, 174 阅读, 收藏,
摘要: 在进行控件封装时,通常会定义一个通用操作的接口,只要满足此接口,都可以使用控件承载其功能,但是当需要扩展控件基本功能的时候,难免会在此接口中添加其他的定义,那么实现了此接口的所有类定义都必须的添加新的方法,改动非常大。通常的做法是使用一个抽象类实现此接口,其他需要扩展此接口的类都继承自此抽象类,而非... 阅读全文

[设计模式]简单工厂模式

2014-03-16 12:06 by hellenism, 204 阅读, 收藏,
摘要: 概念:有一个工厂类根据传入的参数,动态决定应该创建哪一个产品类的实例角色和职责:工厂类:简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被客户端直接调用,创建所需要的对象。抽象产品类:简单工厂所创建的所有对象的父类,它负责描述所有实例的公共接口。具体产品类:是简单工厂模式创建目标,所有创建的对象都是充当这个角色的某一个具体的实例。优点:工厂类包含了必要了逻辑判断,根据外部传入的信息决定创建哪一个具体产品对象,通过使用工厂可以直接创建具体的产品对象,负责消费即可,无需考虑这些对象是如何组织和创建的,明确了各自的职责和权利。缺点:由于工厂类集中了所有实例的创建逻辑,违反了高内聚责任 阅读全文