enum MaritalStatus { UnmarrIEd,MarrIEd,divorced,WIDowedOrWIDowered };MaritalStatus m = UnmarrIEd;
Swift枚举可以做到上面,但他们可以做更多。当然语言指南有一个很好的barcode modelling example,但我知道的最好的例子,真正带来了数据建模与代数数据类型的点是Scott Wlaschin的演示:http://www.slideshare.net/ScottWlaschin/ddd-with-fsharptypesystemlondonndc2013
你可能会从整个演示文稿中受益,但是真正地得到你需要看到的点是幻灯片60,在那里他展示了如何在典型的业务线应用程序中建模“付款方式”。
演示中的示例是F#,但F#不是远离Swift,你可以很容易地映射他们之间。例如,Swift中的支付方法枚举如下:
enum PaymentMethod { case Cash // No extra data needed. case Cheque(Int) // Cheque #. case Card(CardType,CardNumber) // 2 pIEces of extra data.}
上面的观点是每个订单的付款方式只能是上述三种方法中的一种。编译器不允许任何其他 *** 作。这是一个非常简洁的替代建立整个类层次结构,以模拟这些几乎琐碎的事情。
演示真的从那里开始,最好的部分是Swift可以做的几乎一切F#可以在数据建模,使用可选类型等。
总结以上是内存溢出为你收集整理的当我必须在Swift中的类,结构和枚举之间选择时,我应该如何解释?全部内容,希望文章能够帮你解决当我必须在Swift中的类,结构和枚举之间选择时,我应该如何解释?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)