iOS-设计模式-建造者

11 阅读1分钟

一步步创建对象

class Person {

    var name: String?
    var age: Int = 0

    class Builder {

        private let person = Person()

        func setName(_ name: String) -> Builder {
            person.name = name
            return self
        }

        func setAge(_ age: Int) -> Builder {
            person.age = age
            return self
        }

        func build() -> Person {
            return person
        }
    }
}

let p = Person.Builder()
    .setName("Tom")
    .setAge(20)
    .build()