摘要:
抽象工厂模式是工厂模式的泛化版本,工厂模式是一种特殊的抽象工厂模式。在工厂模式中,每一个工厂只能生产一种具体的产品,而在抽象工厂模式中,每一个工厂可以生产多个具体的产品 名词解释: 1.产品等级:铲平等级结构即产品的继承关系结构,比如 父类是抽象电视机类,有比如海尔电视机 海信电视机 等具体电视机子类。则抽象电视机于具体的电视机子类就构成了产品等级关系。 2.产品族:在抽象工厂模式中,产品族是指同一个工厂生产的,位于不同产品等级结构中的一组产品。比如 海尔电器工厂生产海尔冰箱 海尔洗衣机 这些产品虽属于不同的产品等级接口,却都是海尔工厂生产的,因为称为一个产品族。 案列分析: 需... 阅读全文
摘要:
建造者模式是最复杂的创建型模式,它用于创建一个包含多个组成部分的复杂对象,可以返回一个完整的产品对象给用户,建造者模式关注该复杂对象是如何一步一步创建而成的,对于用户而言,无需知道创建过程和内部组成细节,只需要使用创建好的完整对象即可 复杂对象相当于一辆有待建造的汽车,而对象的属性相当于汽车的部件,建造产品的过程就相当于组装部件的过程。由于组装部件过程很复杂,因此,这些部件的组装过程被“外部化”到一个称作建造者的对象里,建造者返回客户端的是一个建造完成的完整的产品对象,而用户无需关心该对象所包含的属性以及他们的组装方式,这就是建造者模式的模式动机。 将一个复杂对象的构建与他的表示分离,... 阅读全文
摘要:
面向对象设计原则是学习设计模式的基础,每一种设计模式都符合某一种或者多种面向对象设计原则。通过在软件开发中使用这些原则可以提高软件的可维护行和可用性,让我们可以设计出更加灵活也更加容易扩展的软件系统,实现可维护可复用的目标。准确的理解面向对象原则有力与我们更好的学习和理解设计模式。 1.单一职责原则 一个对象应该只包含单一的职责,病也该职责被完整的封装在一个类中。另一种定义是就一个类而言,应该仅有一个引起它变化的原因。 一个类应该只负责一种职责,如果职责太多,将导致系统非常脆弱,可复用性较低,系统的可维护行也被降低。 2.开闭原则 一个软件实体应当对扩展开发,对修改关闭。比如要增... 阅读全文
摘要:
工厂模式:也叫虚拟构造器模式或者多态工厂模式,他属于类创建模式。在工厂模式中,工厂父类负责定义创建产品对象的接口,而工厂子类则负责商城具体的产品对象,这样做的目的是将产品类的实例化操作延迟到工厂子类中完成,即通过工厂子类来确定究竟应该实例化哪一个具体的产品类。 在工厂模式下,核心的工厂类不再负责所有产品的创建,而是将具体的创建工作交给工厂子类去做。这个核心工厂类仅仅负责给出具体工厂必须实现的接口,而不负责哪一个产品被实例化的细节。这使得工厂方法模式可以允许系统在不修改工厂角色的情况下引进新产品。在工厂方法模式下,工厂类与产品类往往具有平行的等级关系,他们之间一一对应。例如显示生活中的手机代工. 阅读全文