简单工厂模式&UML类图

重读《大话设计模式》,回忆曾经学习过的设计模式,并记录一点所得和感悟。

代码无错就是优? 编程是一门技术,牛掰的会把它搞成艺术

编码注意代码规范

面向对象编程 和 面向过程编程是,好的代码要 易维护,可扩展,可复用

活字印刷——》 面向对象(封装,继承,多态把程序的耦合度降低)

1:简单工厂模式

简单来说就是,实现一个公共的类,能够实例化出合适的对象,通过多态, 返回父类的方式

/// 简单工厂模式
/// Swift code implement, and review swift code

public class OperationFactory {
    
    static func createOperate(operate: String) -> Operation? {
        switch (operate){
        case "+":
            return OperationAdd()
        case "-":
            return OperationSub()
        case "*":
            return OperationMul()
        case "/":
            return OperationDiv()
        default:
            break
        }
        return nil
    }
}

class Operation {}

class OperationAdd:Operation{}

class OperationSub:Operation{}

class OperationMul:Operation{}

class OperationDiv:Operation{}

2:UML图

UML 基本图示法

注意其中几种类之间关系,类和接口的表示方式。

关系:

1:继承关系:空心三角+实线来表示。泛化关系是一种继承关系,表示特殊和一般的关系。(鸟 --> 鸭,大雁,企鹅)
2:关联关系:实线箭头表示。(企鹅--> 气候)
3:合成关系:一种强的’拥有‘关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样。 使用 实心菱形+实线箭头来表示,两端还会有数字 ’1‘ or 'n'. (鸟 1--> 2翅膀)
4:聚合关系:表示一种弱的’拥有‘关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分。使用 空心的菱形+实线箭头来表示。(燕群 --> 燕子)
5:依赖关系:虚线箭头来表示。

你可能感兴趣的:(简单工厂模式&UML类图)