顺序重要的Swift Builder模式

问题描述

因此,我想创建一个顺序重要的构建器。但是,我不想让呼叫者担心该命令的顺序。

class myClass {
    private var a: Bool
    private var b: Bool
    private var c: Bool
    init() {
        a = false
        b = false
        c = false
    }
    func build() { // enforces order
        if a {
            // build a
        }
        if b {
            // build b
        }
        if c {
            // build c
        }
        return
    }
    func setA() -> myClass {
        a = true
        return self
    }
    func setB() -> myClass {
        b = true
        return self
    }
    func setC() -> myClass {
        c = true
        return self
    }
}

这是我当前的解决方案。这样,呼叫者无需关心订单。构建函数将处理订单。这就是我想要的。但是我的问题是,我可以不使用布尔值来做到这一点吗?有没有更干净的解决方案来实现相同的目的?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)