Swift 4.1:标语牌中的新增强功能

Swift 4.1现在已经正式发布,您可以浏览下面的图片所实现的增强功能,这些信息来源于—官方Swift博客

增强功能1:SE-0143条件符合性

条件一致性表示这样的概念,即泛型类型仅在其类型参数满足某些要求时才符合特定协议。 例如,仅当Array集合的元素本身是Equatable时,才可以实现Equatable协议

增强功能2:SE-0157支持对关联类型的递归约束

该提议解除了对协议中关联类型的限制。 它们的约束将被允许引用任何协议,包括依赖于封闭协议的协议(递归约束)。

增强功能3:SE-0185综合可量化和可哈希化的一致性

开发人员必须编写大量样板代码来支持复杂类型的相等性哈希性。 该提议为编译器自动合成符合EquatableHashable以减少样板,在已知可能生成正确实现的部分场景中提供了一种方法。

增强功能4:SE-0187引入Sequence.compactMap(_ 🙂

现在不建议使用Sequence.flatMap方法,并且可以使用不同的名称(可能更具描述性)使用相同的功能。

增强功能5:SE-0188使标准库索引类型可哈希化

关键字路径表达式现在可以包括下标,以引用集合和其他可下标类型中的各个位置,但仅当下标参数为Hashable 。 为了提供最大的实用性,标准库索引类型都应添加可Hashable一致性。

增强功能6:SE-0191从集合中消除IndexDistance

Collection消除关联的类型IndexDistance ,并将所有用法修改为具体类型Int

对于其他更新,您可以在我的Twitter句柄@NavRudraSambyal的Twitter上关注我。

要跟随我对RxSwift的工作,您可以找到我的书《 Swift 4中的反应式编程》的链接。

感谢您的阅读,如果发现有用,请分享share