含糊的数据可以说是一般应用步调中最常见的错误和问题的泉源之一。固然 Swift 通过其强大的范例体系和完满的编译器资助我们避免了很多暗昧不清的泉源——但只要我们无法在编译时包管某个数据总是符合我们的要求,就总是有风险,我们终极会处于暗昧不清或不可推测的状态。
本周,让我们来看看一种技能,它可以让我们利用 Swift 的范例体系在编译时实行更多种类的数据验证——消除更多潜伏的歧义泉源,并资助我们在整个代码库中保持范例安全——通过利用幻象范例(phantom types)。
界说精良,但仍然暗昧不清