Swift 2 通过 Protocol Extension 大幅强化了 protocol 在这门语言中的地位,而整个 Swift 标准库其实也是基于 protocol 来设计的,使用了大量的 protocol。可以说 Swift 是一门面向 protocol 的语言。这篇教程中列举了一些 protocol 在实际使用中的方法,可以让你掌握面向接口编程的基础知识。每场研讨会都吸引了团队的注意力,Protocol-Oriented Programming in Swift更是如此。几乎每个成员都表示这个研讨会分享是自己的首选。苹果工程师Dave Abrahams让我们抛开普通的开发方式,跟随他的思路使用protocol-oriented开发方式,而不是类。在列举完类的好处后,他从反面说到这些益处揭示了Swift是一种基于协议的语言。用动态多态性交换静态多态性,他认为协议和新协议扩展要优于抽象体的超类。在Building Better Apps With Value Types in Swift中也概述了更加强大的Protocols。